{
  "version": "1.0.0",
  "project": {
    "name": "Fischer AgentKit",
    "languages": [
      "python"
    ],
    "frameworks": [
      "FastAPI",
      "Pydantic",
      "SQLAlchemy",
      "Typer",
      "Redis"
    ],
    "description": "AI驱动的Agent框架，支持ReAct引擎、多LLM网关、Pipeline编排、自适应反思和消息总线",
    "analyzedAt": "2026-06-17T06:30:20.584048+00:00",
    "gitCommitHash": "840d1af"
  },
  "nodes": [
    {
      "id": "file:configs/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "configs/__init__.py",
      "layer": "utility",
      "summary": "GEO AgentKit Server 配置包",
      "tags": [
        "configs"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:configs/geo_handlers.py",
      "type": "file",
      "name": "geo_handlers.py",
      "filePath": "configs/geo_handlers.py",
      "layer": "utility",
      "summary": "GEO 项目的 Custom Handler — 供 AgentKit Server 使用",
      "tags": [
        "configs"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:configs/geo_server.py",
      "type": "file",
      "name": "geo_server.py",
      "filePath": "configs/geo_server.py",
      "layer": "utility",
      "summary": "GEO AgentKit Server 启动入口：使用 find_config_path + load_config_with_dotenv 统一配置加载",
      "tags": [
        "configs"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:configs/geo_tools.py",
      "type": "file",
      "name": "geo_tools.py",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "GEO 项目的 Tool 注册 — 供 AgentKit Server 使用",
      "tags": [
        "configs"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/__init__.py",
      "layer": "service",
      "summary": "Fischer AgentKit - Unified Agent Framework",
      "tags": [],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/__main__.py",
      "type": "file",
      "name": "__main__.py",
      "filePath": "src/agentkit/__main__.py",
      "layer": "service",
      "summary": "Allow running agentkit as: python -m agentkit",
      "tags": [],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/bus/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/bus/__init__.py",
      "layer": "service",
      "summary": "AgentKit Bus - Agent 间通信基础设施",
      "tags": [
        "bus"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/bus/interface.py",
      "type": "file",
      "name": "interface.py",
      "filePath": "src/agentkit/bus/interface.py",
      "layer": "data",
      "summary": "MessageBus ABC — Agent 间通信抽象基类。",
      "tags": [
        "bus"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/bus/memory_bus.py",
      "type": "file",
      "name": "memory_bus.py",
      "filePath": "src/agentkit/bus/memory_bus.py",
      "layer": "data",
      "summary": "InMemoryMessageBus — 基于 asyncio.Queue 的内存消息总线。",
      "tags": [
        "bus"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/bus/message.py",
      "type": "file",
      "name": "message.py",
      "filePath": "src/agentkit/bus/message.py",
      "layer": "data",
      "summary": "AgentMessage — Agent 间通信消息模型。",
      "tags": [
        "bus"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/bus/protocol.py",
      "type": "file",
      "name": "protocol.py",
      "filePath": "src/agentkit/bus/protocol.py",
      "layer": "data",
      "summary": "MessageBus Protocol — Agent 间通信抽象层。",
      "tags": [
        "bus"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/bus/redis_bus.py",
      "type": "file",
      "name": "redis_bus.py",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "RedisMessageBus — 基于 Redis Streams 的消息总线。",
      "tags": [
        "bus"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/chat/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/chat/__init__.py",
      "layer": "service",
      "summary": "聊天路由模块 - CostAwareRouter三层意图路由和语义路由",
      "tags": [
        "chat"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/chat/semantic_router.py",
      "type": "file",
      "name": "semantic_router.py",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "Semantic Router — Embedding-based intent routing as Layer 1.5.",
      "tags": [
        "chat"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/cli/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/cli/__init__.py",
      "layer": "service",
      "summary": "AgentKit CLI - Command-line interface for AgentKit framework",
      "tags": [
        "cli"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/cli/chat.py",
      "type": "file",
      "name": "chat.py",
      "filePath": "src/agentkit/cli/chat.py",
      "layer": "api",
      "summary": "Chat 命令：交互式终端聊天，使用 find_config_path + load_config_with_dotenv 统一配置加载链",
      "tags": [
        "cli",
        "chat"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/cli/init.py",
      "type": "file",
      "name": "init.py",
      "filePath": "src/agentkit/cli/init.py",
      "layer": "api",
      "summary": "Project initialization CLI command",
      "tags": [
        "cli"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/cli/main.py",
      "type": "file",
      "name": "main.py",
      "filePath": "src/agentkit/cli/main.py",
      "layer": "api",
      "summary": "AgentKit CLI 主入口：gui/serve 命令使用 find_config_path + load_config_with_dotenv + has_llm_provider 统一配置加载",
      "tags": [
        "cli"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/cli/onboarding.py",
      "type": "file",
      "name": "onboarding.py",
      "filePath": "src/agentkit/cli/onboarding.py",
      "layer": "api",
      "summary": "Onboarding 交互式首次配置向导：merge-update 模式（不覆盖已有配置）、needs_onboarding() 检查 has_llm_provider()、bailian-coding provider 预设",
      "tags": [
        "cli",
        "onboarding"
      ],
      "complexity": "complex"
    },
    {
      "id": "file:src/agentkit/cli/pair.py",
      "type": "file",
      "name": "pair.py",
      "filePath": "src/agentkit/cli/pair.py",
      "layer": "api",
      "summary": "Client pairing CLI command",
      "tags": [
        "cli"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/cli/skill.py",
      "type": "file",
      "name": "skill.py",
      "filePath": "src/agentkit/cli/skill.py",
      "layer": "api",
      "summary": "Skill management CLI commands",
      "tags": [
        "cli"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/cli/task.py",
      "type": "file",
      "name": "task.py",
      "filePath": "src/agentkit/cli/task.py",
      "layer": "api",
      "summary": "Task 管理 CLI 命令：本地模式使用 find_config_path + load_config_with_dotenv 加载配置",
      "tags": [
        "cli"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/cli/templates.py",
      "type": "file",
      "name": "templates.py",
      "filePath": "src/agentkit/cli/templates.py",
      "layer": "api",
      "summary": "agentkit init 模板文件：bailian-coding 默认 provider、docker-compose 含 postgres+pgvector",
      "tags": [
        "cli",
        "templates"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/cli/usage.py",
      "type": "file",
      "name": "usage.py",
      "filePath": "src/agentkit/cli/usage.py",
      "layer": "api",
      "summary": "Usage statistics CLI command",
      "tags": [
        "cli"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/core/__init__.py",
      "layer": "service",
      "summary": "AgentKit Core - 基础组件",
      "tags": [
        "core"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/core/agent_pool.py",
      "type": "file",
      "name": "agent_pool.py",
      "filePath": "src/agentkit/core/agent_pool.py",
      "layer": "service",
      "summary": "AgentPool - 运行时 Agent 实例池",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/base.py",
      "type": "file",
      "name": "base.py",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent 基类 - 统一 Agent 生命周期管理",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/compressor.py",
      "type": "file",
      "name": "compressor.py",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "ContextCompressor - 上下文压缩与 Prompt 缓存",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/config_driven.py",
      "type": "file",
      "name": "config_driven.py",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent - 配置驱动的 Agent 定义",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/dispatcher.py",
      "type": "file",
      "name": "dispatcher.py",
      "filePath": "src/agentkit/core/dispatcher.py",
      "layer": "service",
      "summary": "任务分发器 - 通过 Redis Queue 将任务分发给 Agent",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/exceptions.py",
      "type": "file",
      "name": "exceptions.py",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "Agent 框架自定义异常",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/headroom_compressor.py",
      "type": "file",
      "name": "headroom_compressor.py",
      "filePath": "src/agentkit/core/headroom_compressor.py",
      "layer": "service",
      "summary": "HeadroomCompressor — 基于 headroom-ai 的上下文压缩器",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/logging.py",
      "type": "file",
      "name": "logging.py",
      "filePath": "src/agentkit/core/logging.py",
      "layer": "service",
      "summary": "Structured logging configuration for AgentKit.",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/orchestrator.py",
      "type": "file",
      "name": "orchestrator.py",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator - 多 Agent 协作编排器",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/plan_checker.py",
      "type": "file",
      "name": "plan_checker.py",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "PlanChecker — 计划检查与复盘",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/plan_executor.py",
      "type": "file",
      "name": "plan_executor.py",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "PlanExecutor — 执行计划执行器",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/plan_schema.py",
      "type": "file",
      "name": "plan_schema.py",
      "filePath": "src/agentkit/core/plan_schema.py",
      "layer": "service",
      "summary": "Plan Schema — GoalPlanner 的执行计划数据模型",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/protocol.py",
      "type": "file",
      "name": "protocol.py",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "Agent 通信协议定义 - 统一消息格式",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/react.py",
      "type": "file",
      "name": "react.py",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReAct 推理-行动循环引擎",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/reflexion.py",
      "type": "file",
      "name": "reflexion.py",
      "filePath": "src/agentkit/core/reflexion.py",
      "layer": "service",
      "summary": "Reflexion 执行引擎",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/registry.py",
      "type": "file",
      "name": "registry.py",
      "filePath": "src/agentkit/core/registry.py",
      "layer": "service",
      "summary": "Agent 注册中心 - 管理 Agent 的注册、发现、状态",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/rewoo.py",
      "type": "file",
      "name": "rewoo.py",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOO (Reasoning Without Observation Others) 执行引擎",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/shared_workspace.py",
      "type": "file",
      "name": "shared_workspace.py",
      "filePath": "src/agentkit/core/shared_workspace.py",
      "layer": "service",
      "summary": "SharedWorkspace - Agent 间共享工作空间",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/standalone.py",
      "type": "file",
      "name": "standalone.py",
      "filePath": "src/agentkit/core/standalone.py",
      "layer": "service",
      "summary": "Standalone Runner - 自动发现并启动配置驱动的 Agent",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/trace.py",
      "type": "file",
      "name": "trace.py",
      "filePath": "src/agentkit/core/trace.py",
      "layer": "service",
      "summary": "执行轨迹记录器",
      "tags": [
        "core"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evaluation/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/evaluation/__init__.py",
      "layer": "service",
      "summary": "Evaluation module - RAG quality assessment",
      "tags": [
        "evaluation"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/evaluation/ragas_evaluator.py",
      "type": "file",
      "name": "ragas_evaluator.py",
      "filePath": "src/agentkit/evaluation/ragas_evaluator.py",
      "layer": "utility",
      "summary": "Ragas Evaluator - RAG 质量评估管线",
      "tags": [
        "evaluation"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evolution/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/evolution/__init__.py",
      "layer": "service",
      "summary": "AgentKit Evolution - 自我进化引擎",
      "tags": [
        "evolution"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/evolution/ab_tester.py",
      "type": "file",
      "name": "ab_tester.py",
      "filePath": "src/agentkit/evolution/ab_tester.py",
      "layer": "utility",
      "summary": "ABTester - A/B 测试框架",
      "tags": [
        "evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evolution/evolution_store.py",
      "type": "file",
      "name": "evolution_store.py",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStore - 进化日志存储",
      "tags": [
        "evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evolution/experience_schema.py",
      "type": "file",
      "name": "experience_schema.py",
      "filePath": "src/agentkit/evolution/experience_schema.py",
      "layer": "utility",
      "summary": "Experience Schema - 任务经验数据模型",
      "tags": [
        "evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evolution/experience_store.py",
      "type": "file",
      "name": "experience_store.py",
      "filePath": "src/agentkit/evolution/experience_store.py",
      "layer": "utility",
      "summary": "ExperienceStore - 任务经验存储",
      "tags": [
        "evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evolution/fitness.py",
      "type": "file",
      "name": "fitness.py",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "MultiObjectiveFitness - 多目标适应度评估",
      "tags": [
        "evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evolution/genetic.py",
      "type": "file",
      "name": "genetic.py",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "GEPA - Genetic-Pareto Prompt Evolution",
      "tags": [
        "evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evolution/lifecycle.py",
      "type": "file",
      "name": "lifecycle.py",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "EvolutionMixin - 将进化引擎集成到 Agent 生命周期",
      "tags": [
        "evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evolution/llm_reflector.py",
      "type": "file",
      "name": "llm_reflector.py",
      "filePath": "src/agentkit/evolution/llm_reflector.py",
      "layer": "utility",
      "summary": "LLMReflector - LLM 驱动的执行反思器",
      "tags": [
        "evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evolution/models.py",
      "type": "file",
      "name": "models.py",
      "filePath": "src/agentkit/evolution/models.py",
      "layer": "utility",
      "summary": "SQLAlchemy ORM models for evolution persistence (SQLite-backed).",
      "tags": [
        "evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evolution/path_optimizer.py",
      "type": "file",
      "name": "path_optimizer.py",
      "filePath": "src/agentkit/evolution/path_optimizer.py",
      "layer": "utility",
      "summary": "PathOptimizer - 执行路径优化器",
      "tags": [
        "evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evolution/pg_store.py",
      "type": "file",
      "name": "pg_store.py",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQLEvolutionStore - 基于 PostgreSQL 的异步进化存储",
      "tags": [
        "evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evolution/pitfall_detector.py",
      "type": "file",
      "name": "pitfall_detector.py",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "PitfallDetector - 任务避坑预警",
      "tags": [
        "evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evolution/prompt_optimizer.py",
      "type": "file",
      "name": "prompt_optimizer.py",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "PromptOptimizer - DSPy 风格的 Prompt 自动优化器",
      "tags": [
        "evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evolution/reflector.py",
      "type": "file",
      "name": "reflector.py",
      "filePath": "src/agentkit/evolution/reflector.py",
      "layer": "utility",
      "summary": "Reflector - 执行反思",
      "tags": [
        "evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/evolution/strategy_tuner.py",
      "type": "file",
      "name": "strategy_tuner.py",
      "filePath": "src/agentkit/evolution/strategy_tuner.py",
      "layer": "utility",
      "summary": "StrategyTuner - 策略调优",
      "tags": [
        "evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/llm/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/llm/__init__.py",
      "layer": "service",
      "summary": "LLM Gateway Module - 统一 LLM 调用",
      "tags": [
        "llm"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/llm/cache.py",
      "type": "file",
      "name": "cache.py",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "LLM Response Cache — Exact-match + Semantic-match dual cache for LLM responses.",
      "tags": [
        "llm"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/llm/cache_key.py",
      "type": "file",
      "name": "cache_key.py",
      "filePath": "src/agentkit/llm/cache_key.py",
      "layer": "utility",
      "summary": "LLM Cache Key Generation — Deterministic SHA-256 cache key from LLM request parameters.",
      "tags": [
        "llm"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/llm/config.py",
      "type": "file",
      "name": "config.py",
      "filePath": "src/agentkit/llm/config.py",
      "layer": "utility",
      "summary": "LLM Config - 配置加载",
      "tags": [
        "llm"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/llm/gateway.py",
      "type": "file",
      "name": "gateway.py",
      "filePath": "src/agentkit/llm/gateway.py",
      "layer": "utility",
      "summary": "LLM Gateway - 统一 LLM 调用入口",
      "tags": [
        "llm"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/llm/protocol.py",
      "type": "file",
      "name": "protocol.py",
      "filePath": "src/agentkit/llm/protocol.py",
      "layer": "utility",
      "summary": "LLM Protocol - 数据类与抽象基类",
      "tags": [
        "llm"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/llm/providers/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/llm/providers/__init__.py",
      "layer": "utility",
      "summary": "LLM Providers",
      "tags": [
        "llm",
        "providers"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/llm/providers/anthropic.py",
      "type": "file",
      "name": "anthropic.py",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "Anthropic Provider - 原生 Anthropic Messages API 支持",
      "tags": [
        "llm",
        "providers"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/llm/providers/doubao.py",
      "type": "file",
      "name": "doubao.py",
      "filePath": "src/agentkit/llm/providers/doubao.py",
      "layer": "utility",
      "summary": "DoubaoProvider - 字节豆包 Provider",
      "tags": [
        "llm",
        "providers"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/llm/providers/gemini.py",
      "type": "file",
      "name": "gemini.py",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "Gemini Provider - 原生 Google Gemini API 支持",
      "tags": [
        "llm",
        "providers"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/llm/providers/openai.py",
      "type": "file",
      "name": "openai.py",
      "filePath": "src/agentkit/llm/providers/openai.py",
      "layer": "utility",
      "summary": "OpenAI Compatible Provider - 支持 OpenAI/DeepSeek/Anthropic 等兼容 API",
      "tags": [
        "llm",
        "providers"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/llm/providers/tracker.py",
      "type": "file",
      "name": "tracker.py",
      "filePath": "src/agentkit/llm/providers/tracker.py",
      "layer": "utility",
      "summary": "Usage Tracker - 使用量追踪（委托给 UsageStore）",
      "tags": [
        "llm",
        "providers"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/llm/providers/usage_store.py",
      "type": "file",
      "name": "usage_store.py",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "Usage Store — Persistent usage tracking with Redis Hash backend.",
      "tags": [
        "llm",
        "providers"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/llm/providers/wenxin.py",
      "type": "file",
      "name": "wenxin.py",
      "filePath": "src/agentkit/llm/providers/wenxin.py",
      "layer": "utility",
      "summary": "WenxinProvider - 百度文心 ERNIE Provider",
      "tags": [
        "llm",
        "providers"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/llm/providers/yuanbao.py",
      "type": "file",
      "name": "yuanbao.py",
      "filePath": "src/agentkit/llm/providers/yuanbao.py",
      "layer": "utility",
      "summary": "YuanbaoProvider - 腾讯混元/元宝 Provider",
      "tags": [
        "llm",
        "providers"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/llm/retry.py",
      "type": "file",
      "name": "retry.py",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "RetryPolicy and CircuitBreaker for LLM provider reliability",
      "tags": [
        "llm"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/marketplace/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/marketplace/__init__.py",
      "layer": "service",
      "summary": "AgentKit Marketplace - 拍卖机制与财富追踪",
      "tags": [
        "marketplace"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/marketplace/auction.py",
      "type": "file",
      "name": "auction.py",
      "filePath": "src/agentkit/marketplace/auction.py",
      "layer": "unknown",
      "summary": "AuctionHouse - 拍卖机制，基于竞价选择 Agent",
      "tags": [
        "marketplace"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/marketplace/wealth.py",
      "type": "file",
      "name": "wealth.py",
      "filePath": "src/agentkit/marketplace/wealth.py",
      "layer": "unknown",
      "summary": "WealthTracker - Agent 财富追踪，用于拍卖机制",
      "tags": [
        "marketplace"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/mcp/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/mcp/__init__.py",
      "layer": "service",
      "summary": "AgentKit MCP - Model Context Protocol 支持",
      "tags": [
        "mcp"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/mcp/client.py",
      "type": "file",
      "name": "client.py",
      "filePath": "src/agentkit/mcp/client.py",
      "layer": "utility",
      "summary": "MCP Client - 调用外部 MCP 工具服务器",
      "tags": [
        "mcp"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/mcp/manager.py",
      "type": "file",
      "name": "manager.py",
      "filePath": "src/agentkit/mcp/manager.py",
      "layer": "utility",
      "summary": "MCP Manager - 管理 MCP Server 连接和工具发现",
      "tags": [
        "mcp"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/mcp/server.py",
      "type": "file",
      "name": "server.py",
      "filePath": "src/agentkit/mcp/server.py",
      "layer": "utility",
      "summary": "MCP Server - 将 Agent 能力暴露为 MCP 工具",
      "tags": [
        "mcp"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/mcp/transport.py",
      "type": "file",
      "name": "transport.py",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "MCP Transport - 传输层抽象",
      "tags": [
        "mcp"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/memory/__init__.py",
      "layer": "service",
      "summary": "AgentKit Memory - 记忆系统",
      "tags": [
        "memory"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/memory/adapters/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/memory/adapters/__init__.py",
      "layer": "data",
      "summary": "知识库适配器包",
      "tags": [
        "memory",
        "adapters"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/memory/adapters/base.py",
      "type": "file",
      "name": "base.py",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter 抽象基类 - 知识库适配器的基础实现",
      "tags": [
        "memory",
        "adapters"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/adapters/confluence.py",
      "type": "file",
      "name": "confluence.py",
      "filePath": "src/agentkit/memory/adapters/confluence.py",
      "layer": "data",
      "summary": "ConfluenceAdapter - Confluence 知识库适配器",
      "tags": [
        "memory",
        "adapters"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/adapters/feishu.py",
      "type": "file",
      "name": "feishu.py",
      "filePath": "src/agentkit/memory/adapters/feishu.py",
      "layer": "data",
      "summary": "FeishuKBAdapter - 飞书知识库适配器",
      "tags": [
        "memory",
        "adapters"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/adapters/generic_http.py",
      "type": "file",
      "name": "generic_http.py",
      "filePath": "src/agentkit/memory/adapters/generic_http.py",
      "layer": "data",
      "summary": "GenericHTTPAdapter - 通用 HTTP 知识库适配器",
      "tags": [
        "memory",
        "adapters"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/base.py",
      "type": "file",
      "name": "base.py",
      "filePath": "src/agentkit/memory/base.py",
      "layer": "data",
      "summary": "Memory 抽象基类 - 统一记忆接口",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/chunking.py",
      "type": "file",
      "name": "chunking.py",
      "filePath": "src/agentkit/memory/chunking.py",
      "layer": "data",
      "summary": "Chunking - 文档分块策略",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/contextual_retrieval.py",
      "type": "file",
      "name": "contextual_retrieval.py",
      "filePath": "src/agentkit/memory/contextual_retrieval.py",
      "layer": "data",
      "summary": "ContextualChunker - 上下文增强分块",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/document_loader.py",
      "type": "file",
      "name": "document_loader.py",
      "filePath": "src/agentkit/memory/document_loader.py",
      "layer": "data",
      "summary": "DocumentLoader - 多格式文档解析器",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/embedder.py",
      "type": "file",
      "name": "embedder.py",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "Embedder 接口与实现 - 文本向量化",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/episodic.py",
      "type": "file",
      "name": "episodic.py",
      "filePath": "src/agentkit/memory/episodic.py",
      "layer": "data",
      "summary": "Episodic Memory - 基于 pgvector + PostgreSQL 的任务经验记忆",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/http_rag.py",
      "type": "file",
      "name": "http_rag.py",
      "filePath": "src/agentkit/memory/http_rag.py",
      "layer": "data",
      "summary": "HTTP RAG Service - 通过 HTTP 调用业务系统知识库 API",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/knowledge_base.py",
      "type": "file",
      "name": "knowledge_base.py",
      "filePath": "src/agentkit/memory/knowledge_base.py",
      "layer": "data",
      "summary": "KnowledgeBase 协议定义 - 外部知识库统一接口",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/local_rag.py",
      "type": "file",
      "name": "local_rag.py",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "LocalRAGService - 本地文档 RAG 服务",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/models.py",
      "type": "file",
      "name": "models.py",
      "filePath": "src/agentkit/memory/models.py",
      "layer": "data",
      "summary": "SQLAlchemy ORM models for episodic memory persistence (PostgreSQL + pgvector).",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/multi_source_retriever.py",
      "type": "file",
      "name": "multi_source_retriever.py",
      "filePath": "src/agentkit/memory/multi_source_retriever.py",
      "layer": "data",
      "summary": "MultiSourceRetriever - 多源混合检索器",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/profile.py",
      "type": "file",
      "name": "profile.py",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "分层记忆系统 — SOUL/USER/MEMORY/DAILY 文件管理.",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/query_transformer.py",
      "type": "file",
      "name": "query_transformer.py",
      "filePath": "src/agentkit/memory/query_transformer.py",
      "layer": "data",
      "summary": "QueryTransformer - RAG 查询改写",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/rag_loop.py",
      "type": "file",
      "name": "rag_loop.py",
      "filePath": "src/agentkit/memory/rag_loop.py",
      "layer": "data",
      "summary": "RAGSelfCorrectionLoop - CRAG 自纠正循环",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/relevance_scorer.py",
      "type": "file",
      "name": "relevance_scorer.py",
      "filePath": "src/agentkit/memory/relevance_scorer.py",
      "layer": "data",
      "summary": "RelevanceScorer - 检索结果相关性自动评估",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/retriever.py",
      "type": "file",
      "name": "retriever.py",
      "filePath": "src/agentkit/memory/retriever.py",
      "layer": "data",
      "summary": "MemoryRetriever - 混合检索器",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/semantic.py",
      "type": "file",
      "name": "semantic.py",
      "filePath": "src/agentkit/memory/semantic.py",
      "layer": "data",
      "summary": "Semantic Memory - 知识库适配器",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/memory/working.py",
      "type": "file",
      "name": "working.py",
      "filePath": "src/agentkit/memory/working.py",
      "layer": "data",
      "summary": "Working Memory - 基于 Redis 的短期任务记忆",
      "tags": [
        "memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/orchestrator/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/orchestrator/__init__.py",
      "layer": "service",
      "summary": "AgentKit Orchestrator - 多 Agent 协同编排",
      "tags": [
        "orchestrator"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/orchestrator/compensation.py",
      "type": "file",
      "name": "compensation.py",
      "filePath": "src/agentkit/orchestrator/compensation.py",
      "layer": "service",
      "summary": "Saga compensation pattern for Pipeline execution",
      "tags": [
        "orchestrator"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/orchestrator/dynamic_pipeline.py",
      "type": "file",
      "name": "dynamic_pipeline.py",
      "filePath": "src/agentkit/orchestrator/dynamic_pipeline.py",
      "layer": "service",
      "summary": "DynamicPipeline - 动态 Pipeline 组合",
      "tags": [
        "orchestrator"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/orchestrator/handoff.py",
      "type": "file",
      "name": "handoff.py",
      "filePath": "src/agentkit/orchestrator/handoff.py",
      "layer": "service",
      "summary": "HandoffManager - Agent 间任务转交",
      "tags": [
        "orchestrator"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "type": "file",
      "name": "pipeline_engine.py",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "Pipeline Engine - DAG + 并行执行 + 步骤重试 + Saga 补偿",
      "tags": [
        "orchestrator"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/orchestrator/pipeline_loader.py",
      "type": "file",
      "name": "pipeline_loader.py",
      "filePath": "src/agentkit/orchestrator/pipeline_loader.py",
      "layer": "service",
      "summary": "Pipeline Loader - YAML 加载器",
      "tags": [
        "orchestrator"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/orchestrator/pipeline_models.py",
      "type": "file",
      "name": "pipeline_models.py",
      "filePath": "src/agentkit/orchestrator/pipeline_models.py",
      "layer": "service",
      "summary": "Pipeline execution ORM models for PostgreSQL persistence.",
      "tags": [
        "orchestrator"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "file",
      "name": "pipeline_schema.py",
      "filePath": "src/agentkit/orchestrator/pipeline_schema.py",
      "layer": "service",
      "summary": "Pipeline 数据模型",
      "tags": [
        "orchestrator"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/orchestrator/pipeline_state.py",
      "type": "file",
      "name": "pipeline_state.py",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "Pipeline execution state persistence — Redis hot state + PostgreSQL cold storage.",
      "tags": [
        "orchestrator"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/orchestrator/reflection.py",
      "type": "file",
      "name": "reflection.py",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "Pipeline 反思-重规划模块",
      "tags": [
        "orchestrator"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/orchestrator/retry.py",
      "type": "file",
      "name": "retry.py",
      "filePath": "src/agentkit/orchestrator/retry.py",
      "layer": "service",
      "summary": "Step-level retry with exponential backoff for Pipeline execution",
      "tags": [
        "orchestrator"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/orchestrator/workflow_schema.py",
      "type": "file",
      "name": "workflow_schema.py",
      "filePath": "src/agentkit/orchestrator/workflow_schema.py",
      "layer": "service",
      "summary": "Workflow schema - extends Pipeline with workflow-specific fields",
      "tags": [
        "orchestrator"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/org/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/org/__init__.py",
      "layer": "service",
      "summary": "OrganizationContext - 组织上下文与 Agent 发现",
      "tags": [
        "org"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/org/context.py",
      "type": "file",
      "name": "context.py",
      "filePath": "src/agentkit/org/context.py",
      "layer": "unknown",
      "summary": "OrganizationContext - 组织上下文，管理 AgentProfile 与能力矩阵",
      "tags": [
        "org"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/org/discovery.py",
      "type": "file",
      "name": "discovery.py",
      "filePath": "src/agentkit/org/discovery.py",
      "layer": "unknown",
      "summary": "AgentDiscovery - 基于 OrganizationContext 的 Agent 发现与推荐",
      "tags": [
        "org"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/prompts/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/prompts/__init__.py",
      "layer": "service",
      "summary": "AgentKit Prompts - Prompt 模板系统",
      "tags": [
        "prompts"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/prompts/section.py",
      "type": "file",
      "name": "section.py",
      "filePath": "src/agentkit/prompts/section.py",
      "layer": "utility",
      "summary": "PromptSection - 模块化 Prompt 段落",
      "tags": [
        "prompts"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/prompts/template.py",
      "type": "file",
      "name": "template.py",
      "filePath": "src/agentkit/prompts/template.py",
      "layer": "utility",
      "summary": "PromptTemplate - Prompt 模板渲染",
      "tags": [
        "prompts"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/quality/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/quality/__init__.py",
      "layer": "service",
      "summary": "Quality Gate & Output Standardizer",
      "tags": [
        "quality"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/quality/alignment.py",
      "type": "file",
      "name": "alignment.py",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "AlignmentGuard - 对齐守卫：约束注入 + 级联故障检测",
      "tags": [
        "quality"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/quality/cascade_detector.py",
      "type": "file",
      "name": "cascade_detector.py",
      "filePath": "src/agentkit/quality/cascade_detector.py",
      "layer": "utility",
      "summary": "CascadeDetector - 独立的级联故障检测工具（委托给 CascadeStateStore）",
      "tags": [
        "quality"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/quality/cascade_state_store.py",
      "type": "file",
      "name": "cascade_state_store.py",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "Cascade State Store — Persistent cascade detection state with Redis INCR backend.",
      "tags": [
        "quality"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/quality/gate.py",
      "type": "file",
      "name": "gate.py",
      "filePath": "src/agentkit/quality/gate.py",
      "layer": "utility",
      "summary": "QualityGate - 产出质量管理",
      "tags": [
        "quality"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/quality/output.py",
      "type": "file",
      "name": "output.py",
      "filePath": "src/agentkit/quality/output.py",
      "layer": "utility",
      "summary": "OutputStandardizer - 标准化输出",
      "tags": [
        "quality"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/router/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/router/__init__.py",
      "layer": "service",
      "summary": "Intent Router - 两级意图路由：关键词匹配 → LLM 分类",
      "tags": [
        "router"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/router/intent.py",
      "type": "file",
      "name": "intent.py",
      "filePath": "src/agentkit/router/intent.py",
      "layer": "service",
      "summary": "IntentRouter - 两级意图路由：关键词匹配 → LLM 分类",
      "tags": [
        "router"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/server/__init__.py",
      "layer": "service",
      "summary": "AgentKit Server - FastAPI REST API",
      "tags": [
        "server"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/server/client.py",
      "type": "file",
      "name": "client.py",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient - Python SDK for AgentKit Server",
      "tags": [
        "server"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/client_config.py",
      "type": "file",
      "name": "client_config.py",
      "filePath": "src/agentkit/server/client_config.py",
      "layer": "api",
      "summary": "客户端配置管理：clients.yaml 使用 _deep_resolve 解析 ${VAR} 环境变量引用",
      "tags": [
        "server",
        "config",
        "dotenv"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/routes/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/server/routes/__init__.py",
      "layer": "api",
      "summary": "Server route modules",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/server/routes/agents.py",
      "type": "file",
      "name": "agents.py",
      "filePath": "src/agentkit/server/routes/agents.py",
      "layer": "api",
      "summary": "Agent CRUD routes",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/routes/evolution.py",
      "type": "file",
      "name": "evolution.py",
      "filePath": "src/agentkit/server/routes/evolution.py",
      "layer": "api",
      "summary": "Evolution API routes",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "type": "file",
      "name": "evolution_dashboard.py",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "Evolution Dashboard API routes - 自进化仪表盘",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/routes/health.py",
      "type": "file",
      "name": "health.py",
      "filePath": "src/agentkit/server/routes/health.py",
      "layer": "api",
      "summary": "Health check route",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/routes/kb_management.py",
      "type": "file",
      "name": "kb_management.py",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "Knowledge Base Management API routes",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/routes/llm.py",
      "type": "file",
      "name": "llm.py",
      "filePath": "src/agentkit/server/routes/llm.py",
      "layer": "api",
      "summary": "LLM usage routes",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/routes/memory.py",
      "type": "file",
      "name": "memory.py",
      "filePath": "src/agentkit/server/routes/memory.py",
      "layer": "api",
      "summary": "Memory API routes",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/routes/metrics.py",
      "type": "file",
      "name": "metrics.py",
      "filePath": "src/agentkit/server/routes/metrics.py",
      "layer": "api",
      "summary": "Metrics route — /api/v1/metrics",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/routes/portal.py",
      "type": "file",
      "name": "portal.py",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "服务器模块 - FastAPI HTTP/WebSocket服务",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/routes/settings.py",
      "type": "file",
      "name": "settings.py",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "Settings API 路由：LLM/Skills/KB/General 配置的 CRUD，支持 ${VAR} 反向解析保留、.env 写入 API Key、ruamel.yaml 保留注释",
      "tags": [
        "server",
        "routes",
        "settings",
        "dotenv"
      ],
      "complexity": "complex"
    },
    {
      "id": "file:src/agentkit/server/routes/skill_management.py",
      "type": "file",
      "name": "skill_management.py",
      "filePath": "src/agentkit/server/routes/skill_management.py",
      "layer": "api",
      "summary": "Skill Management API routes",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/routes/skills.py",
      "type": "file",
      "name": "skills.py",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "Skill registration routes",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/routes/tasks.py",
      "type": "file",
      "name": "tasks.py",
      "filePath": "src/agentkit/server/routes/tasks.py",
      "layer": "api",
      "summary": "Task submission routes",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/routes/terminal.py",
      "type": "file",
      "name": "terminal.py",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "Terminal API routes — interactive PTY sessions with whitelist security.",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/routes/workflows.py",
      "type": "file",
      "name": "workflows.py",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "Workflow API routes - CRUD, execution, approval, and real-time progress",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/routes/ws.py",
      "type": "file",
      "name": "ws.py",
      "filePath": "src/agentkit/server/routes/ws.py",
      "layer": "api",
      "summary": "WebSocket route for bidirectional real-time task communication.",
      "tags": [
        "server",
        "routes"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/runner.py",
      "type": "file",
      "name": "runner.py",
      "filePath": "src/agentkit/server/runner.py",
      "layer": "api",
      "summary": "BackgroundRunner - Async task execution with lifecycle management",
      "tags": [
        "server"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/server/task_store.py",
      "type": "file",
      "name": "task_store.py",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "TaskStore - Task state storage with TTL (InMemory / Redis backends)",
      "tags": [
        "server"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/session/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/session/__init__.py",
      "layer": "service",
      "summary": "Session management - multi-turn conversation support for AgentKit.",
      "tags": [
        "session"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/session/manager.py",
      "type": "file",
      "name": "manager.py",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager — high-level API for conversation session management.",
      "tags": [
        "session"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/session/models.py",
      "type": "file",
      "name": "models.py",
      "filePath": "src/agentkit/session/models.py",
      "layer": "data",
      "summary": "Session and Message data models for multi-turn conversations.",
      "tags": [
        "session"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/session/store.py",
      "type": "file",
      "name": "store.py",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "Session store backends — InMemory and Redis.",
      "tags": [
        "session"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/skills/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/skills/__init__.py",
      "layer": "service",
      "summary": "Skill 系统 - 配置驱动的技能定义、注册与加载",
      "tags": [
        "skills"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/skills/base.py",
      "type": "file",
      "name": "base.py",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "Skill 基础类 - SkillConfig, IntentConfig, QualityGateConfig, Skill",
      "tags": [
        "skills"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/skills/geo_pipeline.py",
      "type": "file",
      "name": "geo_pipeline.py",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "GEOPipeline - GEO 端到端工作流编排",
      "tags": [
        "skills"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/skills/loader.py",
      "type": "file",
      "name": "loader.py",
      "filePath": "src/agentkit/skills/loader.py",
      "layer": "service",
      "summary": "SkillLoader - 从 YAML/SKILL.md 目录/Python 包批量加载 Skill",
      "tags": [
        "skills"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/skills/pipeline.py",
      "type": "file",
      "name": "pipeline.py",
      "filePath": "src/agentkit/skills/pipeline.py",
      "layer": "service",
      "summary": "SkillPipeline - 技能编排，将多个 Skill 串联为 Pipeline 执行",
      "tags": [
        "skills"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/skills/registry.py",
      "type": "file",
      "name": "registry.py",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry - Skill 注册中心（v2: 版本管理、能力查询、依赖检查）",
      "tags": [
        "skills"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/skills/schema.py",
      "type": "file",
      "name": "schema.py",
      "filePath": "src/agentkit/skills/schema.py",
      "layer": "service",
      "summary": "SkillSpec - Skill 标准接口规范定义",
      "tags": [
        "skills"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/skills/skill_md.py",
      "type": "file",
      "name": "skill_md.py",
      "filePath": "src/agentkit/skills/skill_md.py",
      "layer": "service",
      "summary": "SKILL.md 解析器 - 从 Markdown 文件解析技能定义",
      "tags": [
        "skills"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/telemetry/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/telemetry/__init__.py",
      "layer": "service",
      "summary": "Telemetry module — OpenTelemetry integration (optional)",
      "tags": [
        "telemetry"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/telemetry/metrics.py",
      "type": "file",
      "name": "metrics.py",
      "filePath": "src/agentkit/telemetry/metrics.py",
      "layer": "utility",
      "summary": "Metric definitions — no-op when OTel not installed",
      "tags": [
        "telemetry"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/telemetry/setup.py",
      "type": "file",
      "name": "setup.py",
      "filePath": "src/agentkit/telemetry/setup.py",
      "layer": "utility",
      "summary": "OTel initialization — called at app startup",
      "tags": [
        "telemetry"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/telemetry/tracer.py",
      "type": "file",
      "name": "tracer.py",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "OpenTelemetry tracer integration with no-op fallback.",
      "tags": [
        "telemetry"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/telemetry/tracing.py",
      "type": "file",
      "name": "tracing.py",
      "filePath": "src/agentkit/telemetry/tracing.py",
      "layer": "utility",
      "summary": "Tracing helpers — no-op when OTel not installed",
      "tags": [
        "telemetry"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/tools/__init__.py",
      "layer": "service",
      "summary": "AgentKit Tools - 工具插件系统",
      "tags": [
        "tools"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/tools/agent_tool.py",
      "type": "file",
      "name": "agent_tool.py",
      "filePath": "src/agentkit/tools/agent_tool.py",
      "layer": "utility",
      "summary": "AgentTool - 将 Agent 包装为 Tool",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/ask_human.py",
      "type": "file",
      "name": "ask_human.py",
      "filePath": "src/agentkit/tools/ask_human.py",
      "layer": "utility",
      "summary": "AskHumanTool — Human-in-the-Loop tool for Chat mode.",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/baidu_search.py",
      "type": "file",
      "name": "baidu_search.py",
      "filePath": "src/agentkit/tools/baidu_search.py",
      "layer": "utility",
      "summary": "BaiduSearchTool - 百度搜索工具，支持优雅降级",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/base.py",
      "type": "file",
      "name": "base.py",
      "filePath": "src/agentkit/tools/base.py",
      "layer": "utility",
      "summary": "Tool 抽象基类 - 统一工具接口",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/composition.py",
      "type": "file",
      "name": "composition.py",
      "filePath": "src/agentkit/tools/composition.py",
      "layer": "utility",
      "summary": "工具组合 - SequentialChain, ParallelFanOut, DynamicSelector",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/computer_use.py",
      "type": "file",
      "name": "computer_use.py",
      "filePath": "src/agentkit/tools/computer_use.py",
      "layer": "utility",
      "summary": "ComputerUseTool - Anthropic Computer Use API 集成",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/computer_use_recorder.py",
      "type": "file",
      "name": "computer_use_recorder.py",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ComputerUseRecorder - Computer Use 操作录制与回放",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/computer_use_session.py",
      "type": "file",
      "name": "computer_use_session.py",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSession - 虚拟桌面会话管理",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/function_tool.py",
      "type": "file",
      "name": "function_tool.py",
      "filePath": "src/agentkit/tools/function_tool.py",
      "layer": "utility",
      "summary": "FunctionTool - 将普通 Python 函数包装为 Tool",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/headroom_retrieve.py",
      "type": "file",
      "name": "headroom_retrieve.py",
      "filePath": "src/agentkit/tools/headroom_retrieve.py",
      "layer": "utility",
      "summary": "HeadroomRetrieveTool — CCR 可逆压缩检索工具",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/mcp_tool.py",
      "type": "file",
      "name": "mcp_tool.py",
      "filePath": "src/agentkit/tools/mcp_tool.py",
      "layer": "utility",
      "summary": "MCPTool - 通过 MCP Client 调用远程工具",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/memory_tool.py",
      "type": "file",
      "name": "memory_tool.py",
      "filePath": "src/agentkit/tools/memory_tool.py",
      "layer": "utility",
      "summary": "MemoryTool — Agent 可在对话中读写记忆的工具.",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/output_parser.py",
      "type": "file",
      "name": "output_parser.py",
      "filePath": "src/agentkit/tools/output_parser.py",
      "layer": "utility",
      "summary": "OutputParser - 结构化解析命令输出",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/pty_session.py",
      "type": "file",
      "name": "pty_session.py",
      "filePath": "src/agentkit/tools/pty_session.py",
      "layer": "utility",
      "summary": "PTYSession - 伪终端会话，支持交互式命令",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/registry.py",
      "type": "file",
      "name": "registry.py",
      "filePath": "src/agentkit/tools/registry.py",
      "layer": "utility",
      "summary": "ToolRegistry - 工具注册中心",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/schema_tools.py",
      "type": "file",
      "name": "schema_tools.py",
      "filePath": "src/agentkit/tools/schema_tools.py",
      "layer": "utility",
      "summary": "Schema 工具集 - 结构化数据提取与生成",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/shell.py",
      "type": "file",
      "name": "shell.py",
      "filePath": "src/agentkit/tools/shell.py",
      "layer": "utility",
      "summary": "ShellTool - Shell 命令执行工具",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/skill_install.py",
      "type": "file",
      "name": "skill_install.py",
      "filePath": "src/agentkit/tools/skill_install.py",
      "layer": "utility",
      "summary": "SkillInstallTool - Agent 可调用的技能安装工具",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/terminal_session.py",
      "type": "file",
      "name": "terminal_session.py",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession - 终端会话状态管理",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/web_crawl.py",
      "type": "file",
      "name": "web_crawl.py",
      "filePath": "src/agentkit/tools/web_crawl.py",
      "layer": "utility",
      "summary": "WebCrawlTool - 基于 Crawl4AI 的网页抓取工具，支持优雅降级",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/tools/web_search.py",
      "type": "file",
      "name": "web_search.py",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool — 通用网页搜索工具。",
      "tags": [
        "tools"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/utils/__init__.py",
      "type": "file",
      "name": "__init__.py",
      "filePath": "src/agentkit/utils/__init__.py",
      "layer": "service",
      "summary": "AgentKit utility modules.",
      "tags": [
        "utils"
      ],
      "complexity": "simple"
    },
    {
      "id": "file:src/agentkit/utils/security.py",
      "type": "file",
      "name": "security.py",
      "filePath": "src/agentkit/utils/security.py",
      "layer": "unknown",
      "summary": "Security utilities for URL validation.",
      "tags": [
        "utils"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/utils/vector_math.py",
      "type": "file",
      "name": "vector_math.py",
      "filePath": "src/agentkit/utils/vector_math.py",
      "layer": "unknown",
      "summary": "Shared vector math utilities.",
      "tags": [
        "utils"
      ],
      "complexity": "moderate"
    },
    {
      "id": "class:MessageBus",
      "type": "class",
      "name": "MessageBus",
      "filePath": "src/agentkit/bus/interface.py",
      "layer": "data",
      "summary": "Agent 间消息总线抽象基类。",
      "tags": [
        "MessageBus"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:MessageBus.publish",
      "type": "function",
      "name": "publish",
      "filePath": "src/agentkit/bus/interface.py",
      "layer": "data",
      "summary": "MessageBus.publish(message) 异步方法",
      "tags": [
        "MessageBus",
        "publish"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MessageBus.subscribe",
      "type": "function",
      "name": "subscribe",
      "filePath": "src/agentkit/bus/interface.py",
      "layer": "data",
      "summary": "MessageBus.subscribe(agent_name, handler) 异步方法",
      "tags": [
        "MessageBus",
        "subscribe"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MessageBus.unsubscribe",
      "type": "function",
      "name": "unsubscribe",
      "filePath": "src/agentkit/bus/interface.py",
      "layer": "data",
      "summary": "MessageBus.unsubscribe(agent_name) 异步方法",
      "tags": [
        "MessageBus",
        "unsubscribe"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MessageBus.request",
      "type": "function",
      "name": "request",
      "filePath": "src/agentkit/bus/interface.py",
      "layer": "data",
      "summary": "MessageBus.request(message, timeout_seconds) 异步方法",
      "tags": [
        "MessageBus",
        "request"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:InMemoryMessageBus",
      "type": "class",
      "name": "InMemoryMessageBus",
      "filePath": "src/agentkit/bus/memory_bus.py",
      "layer": "data",
      "summary": "基于 asyncio.Queue 的内存消息总线。",
      "tags": [
        "InMemoryMessageBus"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:InMemoryMessageBus.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/bus/memory_bus.py",
      "layer": "data",
      "summary": "InMemoryMessageBus.__init__(cascade_detector, alignment_guard) 方法",
      "tags": [
        "InMemoryMessageBus",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryMessageBus.publish",
      "type": "function",
      "name": "publish",
      "filePath": "src/agentkit/bus/memory_bus.py",
      "layer": "data",
      "summary": "InMemoryMessageBus.publish(message) 异步方法",
      "tags": [
        "InMemoryMessageBus",
        "publish"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryMessageBus.subscribe",
      "type": "function",
      "name": "subscribe",
      "filePath": "src/agentkit/bus/memory_bus.py",
      "layer": "data",
      "summary": "InMemoryMessageBus.subscribe(agent_name, handler) 异步方法",
      "tags": [
        "InMemoryMessageBus",
        "subscribe"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryMessageBus._consume_queue",
      "type": "function",
      "name": "_consume_queue",
      "filePath": "src/agentkit/bus/memory_bus.py",
      "layer": "data",
      "summary": "InMemoryMessageBus._consume_queue(agent_name, handler) 异步方法",
      "tags": [
        "InMemoryMessageBus",
        "_consume_queue"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryMessageBus._try_resolve_pending",
      "type": "function",
      "name": "_try_resolve_pending",
      "filePath": "src/agentkit/bus/memory_bus.py",
      "layer": "data",
      "summary": "InMemoryMessageBus._try_resolve_pending(message) 方法",
      "tags": [
        "InMemoryMessageBus",
        "_try_resolve_pending"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryMessageBus.unsubscribe",
      "type": "function",
      "name": "unsubscribe",
      "filePath": "src/agentkit/bus/memory_bus.py",
      "layer": "data",
      "summary": "InMemoryMessageBus.unsubscribe(agent_name) 异步方法",
      "tags": [
        "InMemoryMessageBus",
        "unsubscribe"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryMessageBus.request",
      "type": "function",
      "name": "request",
      "filePath": "src/agentkit/bus/memory_bus.py",
      "layer": "data",
      "summary": "InMemoryMessageBus.request(message, timeout_seconds) 异步方法",
      "tags": [
        "InMemoryMessageBus",
        "request"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryMessageBus.broadcast",
      "type": "function",
      "name": "broadcast",
      "filePath": "src/agentkit/bus/memory_bus.py",
      "layer": "data",
      "summary": "InMemoryMessageBus.broadcast(message) 异步方法",
      "tags": [
        "InMemoryMessageBus",
        "broadcast"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryMessageBus.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/bus/memory_bus.py",
      "layer": "data",
      "summary": "InMemoryMessageBus.health_check() 异步方法",
      "tags": [
        "InMemoryMessageBus",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryMessageBus.backend_type",
      "type": "function",
      "name": "backend_type",
      "filePath": "src/agentkit/bus/memory_bus.py",
      "layer": "data",
      "summary": "InMemoryMessageBus.backend_type() 方法",
      "tags": [
        "InMemoryMessageBus",
        "backend_type"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentMessage",
      "type": "class",
      "name": "AgentMessage",
      "filePath": "src/agentkit/bus/message.py",
      "layer": "data",
      "summary": "Agent 间通信消息。",
      "tags": [
        "AgentMessage"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:AgentMessage.is_expired",
      "type": "function",
      "name": "is_expired",
      "filePath": "src/agentkit/bus/message.py",
      "layer": "data",
      "summary": "AgentMessage.is_expired() 方法",
      "tags": [
        "AgentMessage",
        "is_expired"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentMessage.is_broadcast",
      "type": "function",
      "name": "is_broadcast",
      "filePath": "src/agentkit/bus/message.py",
      "layer": "data",
      "summary": "AgentMessage.is_broadcast() 方法",
      "tags": [
        "AgentMessage",
        "is_broadcast"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentMessage.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/bus/message.py",
      "layer": "data",
      "summary": "AgentMessage.to_dict() 方法",
      "tags": [
        "AgentMessage",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentMessage.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/bus/message.py",
      "layer": "data",
      "summary": "AgentMessage.from_dict(cls, data) 方法",
      "tags": [
        "AgentMessage",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MessageBus",
      "type": "class",
      "name": "MessageBus",
      "filePath": "src/agentkit/bus/protocol.py",
      "layer": "data",
      "summary": "Agent 间通信总线协议。",
      "tags": [
        "MessageBus"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:MessageBus.publish",
      "type": "function",
      "name": "publish",
      "filePath": "src/agentkit/bus/protocol.py",
      "layer": "data",
      "summary": "MessageBus.publish(message) 异步方法",
      "tags": [
        "MessageBus",
        "publish"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MessageBus.subscribe",
      "type": "function",
      "name": "subscribe",
      "filePath": "src/agentkit/bus/protocol.py",
      "layer": "data",
      "summary": "MessageBus.subscribe(agent_name, handler) 异步方法",
      "tags": [
        "MessageBus",
        "subscribe"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MessageBus.unsubscribe",
      "type": "function",
      "name": "unsubscribe",
      "filePath": "src/agentkit/bus/protocol.py",
      "layer": "data",
      "summary": "MessageBus.unsubscribe(agent_name) 异步方法",
      "tags": [
        "MessageBus",
        "unsubscribe"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MessageBus.request",
      "type": "function",
      "name": "request",
      "filePath": "src/agentkit/bus/protocol.py",
      "layer": "data",
      "summary": "MessageBus.request(message, timeout) 异步方法",
      "tags": [
        "MessageBus",
        "request"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MessageBus.broadcast",
      "type": "function",
      "name": "broadcast",
      "filePath": "src/agentkit/bus/protocol.py",
      "layer": "data",
      "summary": "MessageBus.broadcast(message) 异步方法",
      "tags": [
        "MessageBus",
        "broadcast"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MessageBus.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/bus/protocol.py",
      "layer": "data",
      "summary": "MessageBus.health_check() 异步方法",
      "tags": [
        "MessageBus",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RedisMessageBus",
      "type": "class",
      "name": "RedisMessageBus",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "基于 Redis Streams 的消息总线。",
      "tags": [
        "RedisMessageBus"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:RedisMessageBus.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "RedisMessageBus.__init__(redis_url, consumer_group, max_retries) 方法",
      "tags": [
        "RedisMessageBus",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisMessageBus._get_redis",
      "type": "function",
      "name": "_get_redis",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "RedisMessageBus._get_redis() 异步方法",
      "tags": [
        "RedisMessageBus",
        "_get_redis"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisMessageBus._stream_key",
      "type": "function",
      "name": "_stream_key",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "RedisMessageBus._stream_key(agent_name) 方法",
      "tags": [
        "RedisMessageBus",
        "_stream_key"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisMessageBus._dead_letter_key",
      "type": "function",
      "name": "_dead_letter_key",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "RedisMessageBus._dead_letter_key(agent_name) 方法",
      "tags": [
        "RedisMessageBus",
        "_dead_letter_key"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisMessageBus.publish",
      "type": "function",
      "name": "publish",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "RedisMessageBus.publish(message) 异步方法",
      "tags": [
        "RedisMessageBus",
        "publish"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisMessageBus.subscribe",
      "type": "function",
      "name": "subscribe",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "RedisMessageBus.subscribe(agent_name, handler) 异步方法",
      "tags": [
        "RedisMessageBus",
        "subscribe"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisMessageBus._consume_stream",
      "type": "function",
      "name": "_consume_stream",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "RedisMessageBus._consume_stream(agent_name) 异步方法",
      "tags": [
        "RedisMessageBus",
        "_consume_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisMessageBus._handle_failed_message",
      "type": "function",
      "name": "_handle_failed_message",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "RedisMessageBus._handle_failed_message(redis, stream_key, msg_id, fields, agent_name) 异步方法",
      "tags": [
        "RedisMessageBus",
        "_handle_failed_message"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisMessageBus.unsubscribe",
      "type": "function",
      "name": "unsubscribe",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "RedisMessageBus.unsubscribe(agent_name) 异步方法",
      "tags": [
        "RedisMessageBus",
        "unsubscribe"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisMessageBus.request",
      "type": "function",
      "name": "request",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "RedisMessageBus.request(message, timeout) 异步方法",
      "tags": [
        "RedisMessageBus",
        "request"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisMessageBus.broadcast",
      "type": "function",
      "name": "broadcast",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "RedisMessageBus.broadcast(message) 异步方法",
      "tags": [
        "RedisMessageBus",
        "broadcast"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisMessageBus.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "RedisMessageBus.health_check() 异步方法",
      "tags": [
        "RedisMessageBus",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisMessageBus.backend_type",
      "type": "function",
      "name": "backend_type",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "RedisMessageBus.backend_type() 方法",
      "tags": [
        "RedisMessageBus",
        "backend_type"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SemanticRouteResult",
      "type": "class",
      "name": "SemanticRouteResult",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "Result of semantic routing.",
      "tags": [
        "SemanticRouteResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillEmbeddingIndex",
      "type": "class",
      "name": "SkillEmbeddingIndex",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "Pre-computed embedding index for registered skills.",
      "tags": [
        "SkillEmbeddingIndex"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:SkillEmbeddingIndex.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "SkillEmbeddingIndex.__init__(embedder) 方法",
      "tags": [
        "SkillEmbeddingIndex",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillEmbeddingIndex.build",
      "type": "function",
      "name": "build",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "SkillEmbeddingIndex.build(skill_registry) 异步方法",
      "tags": [
        "SkillEmbeddingIndex",
        "build"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillEmbeddingIndex.update_skill",
      "type": "function",
      "name": "update_skill",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "SkillEmbeddingIndex.update_skill(skill_name, skill) 异步方法",
      "tags": [
        "SkillEmbeddingIndex",
        "update_skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillEmbeddingIndex.remove_skill",
      "type": "function",
      "name": "remove_skill",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "SkillEmbeddingIndex.remove_skill(skill_name) 方法",
      "tags": [
        "SkillEmbeddingIndex",
        "remove_skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillEmbeddingIndex.search",
      "type": "function",
      "name": "search",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "SkillEmbeddingIndex.search(query_embedding, top_k) 异步方法",
      "tags": [
        "SkillEmbeddingIndex",
        "search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillEmbeddingIndex._build_source_text",
      "type": "function",
      "name": "_build_source_text",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "SkillEmbeddingIndex._build_source_text(skill) 方法",
      "tags": [
        "SkillEmbeddingIndex",
        "_build_source_text"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillEmbeddingIndex.size",
      "type": "function",
      "name": "size",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "SkillEmbeddingIndex.size() 方法",
      "tags": [
        "SkillEmbeddingIndex",
        "size"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SemanticRouter",
      "type": "class",
      "name": "SemanticRouter",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "Embedding-based semantic routing as Layer 1.5.",
      "tags": [
        "SemanticRouter"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:SemanticRouter.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "SemanticRouter.__init__(embedder, similarity_high, similarity_low) 方法",
      "tags": [
        "SemanticRouter",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SemanticRouter.build_index",
      "type": "function",
      "name": "build_index",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "SemanticRouter.build_index(skill_registry) 异步方法",
      "tags": [
        "SemanticRouter",
        "build_index"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SemanticRouter.update_skill",
      "type": "function",
      "name": "update_skill",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "SemanticRouter.update_skill(skill_name, skill) 异步方法",
      "tags": [
        "SemanticRouter",
        "update_skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SemanticRouter.remove_skill",
      "type": "function",
      "name": "remove_skill",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "SemanticRouter.remove_skill(skill_name) 方法",
      "tags": [
        "SemanticRouter",
        "remove_skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SemanticRouter.route",
      "type": "function",
      "name": "route",
      "filePath": "src/agentkit/chat/semantic_router.py",
      "layer": "unknown",
      "summary": "SemanticRouter.route(query) 异步方法",
      "tags": [
        "SemanticRouter",
        "route"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentPool",
      "type": "class",
      "name": "AgentPool",
      "filePath": "src/agentkit/core/agent_pool.py",
      "layer": "service",
      "summary": "运行时 Agent 实例池，管理 Agent 的创建、获取、删除",
      "tags": [
        "AgentPool"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:AgentPool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/agent_pool.py",
      "layer": "service",
      "summary": "AgentPool.__init__(llm_gateway, skill_registry, tool_registry, compressor, message_bus) 方法",
      "tags": [
        "AgentPool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentPool.create_agent",
      "type": "function",
      "name": "create_agent",
      "filePath": "src/agentkit/core/agent_pool.py",
      "layer": "service",
      "summary": "AgentPool.create_agent(config) 异步方法",
      "tags": [
        "AgentPool",
        "create_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentPool.remove_agent",
      "type": "function",
      "name": "remove_agent",
      "filePath": "src/agentkit/core/agent_pool.py",
      "layer": "service",
      "summary": "AgentPool.remove_agent(name) 异步方法",
      "tags": [
        "AgentPool",
        "remove_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentPool.get_agent",
      "type": "function",
      "name": "get_agent",
      "filePath": "src/agentkit/core/agent_pool.py",
      "layer": "service",
      "summary": "AgentPool.get_agent(name) 方法",
      "tags": [
        "AgentPool",
        "get_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentPool.list_agents",
      "type": "function",
      "name": "list_agents",
      "filePath": "src/agentkit/core/agent_pool.py",
      "layer": "service",
      "summary": "AgentPool.list_agents() 方法",
      "tags": [
        "AgentPool",
        "list_agents"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentPool.create_agent_from_skill",
      "type": "function",
      "name": "create_agent_from_skill",
      "filePath": "src/agentkit/core/agent_pool.py",
      "layer": "service",
      "summary": "AgentPool.create_agent_from_skill(skill_name) 异步方法",
      "tags": [
        "AgentPool",
        "create_agent_from_skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:BaseAgent",
      "type": "class",
      "name": "BaseAgent",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "所有 Agent 的基类，定义标准生命周期。",
      "tags": [
        "BaseAgent"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:BaseAgent.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.__init__(name, agent_type, version) 方法",
      "tags": [
        "BaseAgent",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.status",
      "type": "function",
      "name": "status",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.status() 方法",
      "tags": [
        "BaseAgent",
        "status"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.config_version",
      "type": "function",
      "name": "config_version",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.config_version() 方法",
      "tags": [
        "BaseAgent",
        "config_version"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.is_distributed",
      "type": "function",
      "name": "is_distributed",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.is_distributed() 方法",
      "tags": [
        "BaseAgent",
        "is_distributed"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent._acquire_status_lock",
      "type": "function",
      "name": "_acquire_status_lock",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent._acquire_status_lock() 异步方法",
      "tags": [
        "BaseAgent",
        "_acquire_status_lock"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent._release_status_lock",
      "type": "function",
      "name": "_release_status_lock",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent._release_status_lock() 方法",
      "tags": [
        "BaseAgent",
        "_release_status_lock"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.tools",
      "type": "function",
      "name": "tools",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.tools() 方法",
      "tags": [
        "BaseAgent",
        "tools"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.memory",
      "type": "function",
      "name": "memory",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.memory() 方法",
      "tags": [
        "BaseAgent",
        "memory"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.llm_gateway",
      "type": "function",
      "name": "llm_gateway",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.llm_gateway() 方法",
      "tags": [
        "BaseAgent",
        "llm_gateway"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.llm_gateway",
      "type": "function",
      "name": "llm_gateway",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.llm_gateway(gateway) 方法",
      "tags": [
        "BaseAgent",
        "llm_gateway"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.skill",
      "type": "function",
      "name": "skill",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.skill() 方法",
      "tags": [
        "BaseAgent",
        "skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.skill",
      "type": "function",
      "name": "skill",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.skill(skill) 方法",
      "tags": [
        "BaseAgent",
        "skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.quality_gate",
      "type": "function",
      "name": "quality_gate",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.quality_gate() 方法",
      "tags": [
        "BaseAgent",
        "quality_gate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.handle_task",
      "type": "function",
      "name": "handle_task",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.handle_task(task) 异步方法",
      "tags": [
        "BaseAgent",
        "handle_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.get_capabilities",
      "type": "function",
      "name": "get_capabilities",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.get_capabilities() 方法",
      "tags": [
        "BaseAgent",
        "get_capabilities"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.on_task_start",
      "type": "function",
      "name": "on_task_start",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.on_task_start(task) 异步方法",
      "tags": [
        "BaseAgent",
        "on_task_start"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.on_task_complete",
      "type": "function",
      "name": "on_task_complete",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.on_task_complete(task, output) 异步方法",
      "tags": [
        "BaseAgent",
        "on_task_complete"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.on_task_failed",
      "type": "function",
      "name": "on_task_failed",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.on_task_failed(task, error) 异步方法",
      "tags": [
        "BaseAgent",
        "on_task_failed"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.handle_task_with_feedback",
      "type": "function",
      "name": "handle_task_with_feedback",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.handle_task_with_feedback(task, feedback) 异步方法",
      "tags": [
        "BaseAgent",
        "handle_task_with_feedback"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent._build_quality_feedback",
      "type": "function",
      "name": "_build_quality_feedback",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent._build_quality_feedback(quality_result) 方法",
      "tags": [
        "BaseAgent",
        "_build_quality_feedback"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.use_tool",
      "type": "function",
      "name": "use_tool",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.use_tool(tool) 方法",
      "tags": [
        "BaseAgent",
        "use_tool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.use_memory",
      "type": "function",
      "name": "use_memory",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.use_memory(memory) 方法",
      "tags": [
        "BaseAgent",
        "use_memory"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.use_memory_retriever",
      "type": "function",
      "name": "use_memory_retriever",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.use_memory_retriever(retriever) 方法",
      "tags": [
        "BaseAgent",
        "use_memory_retriever"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.set_registry",
      "type": "function",
      "name": "set_registry",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.set_registry(registry) 方法",
      "tags": [
        "BaseAgent",
        "set_registry"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.set_dispatcher",
      "type": "function",
      "name": "set_dispatcher",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.set_dispatcher(dispatcher) 方法",
      "tags": [
        "BaseAgent",
        "set_dispatcher"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.start",
      "type": "function",
      "name": "start",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.start(redis_url) 异步方法",
      "tags": [
        "BaseAgent",
        "start"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.stop",
      "type": "function",
      "name": "stop",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.stop() 异步方法",
      "tags": [
        "BaseAgent",
        "stop"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.execute(task) 异步方法",
      "tags": [
        "BaseAgent",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.cancel_task",
      "type": "function",
      "name": "cancel_task",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.cancel_task(task_id) 方法",
      "tags": [
        "BaseAgent",
        "cancel_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.handoff",
      "type": "function",
      "name": "handoff",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.handoff(target_agent, task, reason, context) 异步方法",
      "tags": [
        "BaseAgent",
        "handoff"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.report_progress",
      "type": "function",
      "name": "report_progress",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.report_progress(task_id, progress, message) 异步方法",
      "tags": [
        "BaseAgent",
        "report_progress"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent.heartbeat",
      "type": "function",
      "name": "heartbeat",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent.heartbeat() 异步方法",
      "tags": [
        "BaseAgent",
        "heartbeat"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent._heartbeat_loop",
      "type": "function",
      "name": "_heartbeat_loop",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent._heartbeat_loop() 异步方法",
      "tags": [
        "BaseAgent",
        "_heartbeat_loop"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent._listen_for_tasks",
      "type": "function",
      "name": "_listen_for_tasks",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent._listen_for_tasks() 异步方法",
      "tags": [
        "BaseAgent",
        "_listen_for_tasks"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent._execute_task_with_semaphore",
      "type": "function",
      "name": "_execute_task_with_semaphore",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent._execute_task_with_semaphore(task) 异步方法",
      "tags": [
        "BaseAgent",
        "_execute_task_with_semaphore"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent._execute_task",
      "type": "function",
      "name": "_execute_task",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent._execute_task(task) 异步方法",
      "tags": [
        "BaseAgent",
        "_execute_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaseAgent._validate_input",
      "type": "function",
      "name": "_validate_input",
      "filePath": "src/agentkit/core/base.py",
      "layer": "service",
      "summary": "BaseAgent._validate_input(data, schema) 方法",
      "tags": [
        "BaseAgent",
        "_validate_input"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CompressionStrategy",
      "type": "class",
      "name": "CompressionStrategy",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "压缩策略协议 — 所有压缩器必须实现此接口",
      "tags": [
        "CompressionStrategy"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CompressionStrategy.compress",
      "type": "function",
      "name": "compress",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "CompressionStrategy.compress(messages) 异步方法",
      "tags": [
        "CompressionStrategy",
        "compress"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CompressionStrategy.compress_tool_result",
      "type": "function",
      "name": "compress_tool_result",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "CompressionStrategy.compress_tool_result(tool_name, result) 异步方法",
      "tags": [
        "CompressionStrategy",
        "compress_tool_result"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CompressionStrategy.is_available",
      "type": "function",
      "name": "is_available",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "CompressionStrategy.is_available() 方法",
      "tags": [
        "CompressionStrategy",
        "is_available"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ContextCompressor",
      "type": "class",
      "name": "ContextCompressor",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "Compress long conversation histories to stay within token budgets",
      "tags": [
        "ContextCompressor"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:ContextCompressor.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "ContextCompressor.__init__(llm_gateway, max_tokens, keep_recent, model) 方法",
      "tags": [
        "ContextCompressor",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ContextCompressor.estimate_tokens",
      "type": "function",
      "name": "estimate_tokens",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "ContextCompressor.estimate_tokens(messages) 方法",
      "tags": [
        "ContextCompressor",
        "estimate_tokens"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ContextCompressor.compress",
      "type": "function",
      "name": "compress",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "ContextCompressor.compress(messages, _compression_depth) 异步方法",
      "tags": [
        "ContextCompressor",
        "compress"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ContextCompressor._summarize",
      "type": "function",
      "name": "_summarize",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "ContextCompressor._summarize(messages, max_input_tokens) 异步方法",
      "tags": [
        "ContextCompressor",
        "_summarize"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ContextCompressor._simple_summary",
      "type": "function",
      "name": "_simple_summary",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "ContextCompressor._simple_summary(messages) 方法",
      "tags": [
        "ContextCompressor",
        "_simple_summary"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ContextCompressor._compress_aggressive",
      "type": "function",
      "name": "_compress_aggressive",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "ContextCompressor._compress_aggressive(messages, _compression_depth) 异步方法",
      "tags": [
        "ContextCompressor",
        "_compress_aggressive"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ContextCompressor._truncate",
      "type": "function",
      "name": "_truncate",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "ContextCompressor._truncate(messages) 方法",
      "tags": [
        "ContextCompressor",
        "_truncate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ContextCompressor.compress_tool_result",
      "type": "function",
      "name": "compress_tool_result",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "ContextCompressor.compress_tool_result(tool_name, result) 异步方法",
      "tags": [
        "ContextCompressor",
        "compress_tool_result"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ContextCompressor.is_available",
      "type": "function",
      "name": "is_available",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "ContextCompressor.is_available() 方法",
      "tags": [
        "ContextCompressor",
        "is_available"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentConfig",
      "type": "class",
      "name": "AgentConfig",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "Agent 配置模型，从 YAML 或 Dict 构建",
      "tags": [
        "AgentConfig"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:AgentConfig.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "AgentConfig.__init__(name, agent_type, version, description, task_mode, supported_tasks, max_concurrency, input_schema, output_schema, prompt, llm, tools, memory, custom_handler) 方法",
      "tags": [
        "AgentConfig",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentConfig._validate",
      "type": "function",
      "name": "_validate",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "AgentConfig._validate() 方法",
      "tags": [
        "AgentConfig",
        "_validate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentConfig.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "AgentConfig.from_dict(cls, data) 方法",
      "tags": [
        "AgentConfig",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentConfig.from_yaml",
      "type": "function",
      "name": "from_yaml",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "AgentConfig.from_yaml(cls, path) 方法",
      "tags": [
        "AgentConfig",
        "from_yaml"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentConfig.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "AgentConfig.to_dict() 方法",
      "tags": [
        "AgentConfig",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ConfigDrivenAgent",
      "type": "class",
      "name": "ConfigDrivenAgent",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "配置驱动的 Agent",
      "tags": [
        "ConfigDrivenAgent"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:ConfigDrivenAgent.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent.__init__(config, tool_registry, llm_client, custom_handlers, llm_gateway, mcp_servers, compressor) 方法",
      "tags": [
        "ConfigDrivenAgent",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent.get_tools",
      "type": "function",
      "name": "get_tools",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent.get_tools() 方法",
      "tags": [
        "ConfigDrivenAgent",
        "get_tools"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent.get_model",
      "type": "function",
      "name": "get_model",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent.get_model() 方法",
      "tags": [
        "ConfigDrivenAgent",
        "get_model"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent.get_system_prompt",
      "type": "function",
      "name": "get_system_prompt",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent.get_system_prompt() 方法",
      "tags": [
        "ConfigDrivenAgent",
        "get_system_prompt"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._build_tools_description",
      "type": "function",
      "name": "_build_tools_description",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._build_tools_description(tools) 方法",
      "tags": [
        "ConfigDrivenAgent",
        "_build_tools_description"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent.get_react_config",
      "type": "function",
      "name": "get_react_config",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent.get_react_config() 方法",
      "tags": [
        "ConfigDrivenAgent",
        "get_react_config"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent.config",
      "type": "function",
      "name": "config",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent.config() 方法",
      "tags": [
        "ConfigDrivenAgent",
        "config"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent.prompt_template",
      "type": "function",
      "name": "prompt_template",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent.prompt_template() 方法",
      "tags": [
        "ConfigDrivenAgent",
        "prompt_template"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent.on_task_complete",
      "type": "function",
      "name": "on_task_complete",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent.on_task_complete(task, output) 异步方法",
      "tags": [
        "ConfigDrivenAgent",
        "on_task_complete"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent.on_task_failed",
      "type": "function",
      "name": "on_task_failed",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent.on_task_failed(task, error) 异步方法",
      "tags": [
        "ConfigDrivenAgent",
        "on_task_failed"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._bind_tools",
      "type": "function",
      "name": "_bind_tools",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._bind_tools() 方法",
      "tags": [
        "ConfigDrivenAgent",
        "_bind_tools"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._auto_set_current_module",
      "type": "function",
      "name": "_auto_set_current_module",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._auto_set_current_module() 方法",
      "tags": [
        "ConfigDrivenAgent",
        "_auto_set_current_module"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._register_mcp_tools",
      "type": "function",
      "name": "_register_mcp_tools",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._register_mcp_tools() 异步方法",
      "tags": [
        "ConfigDrivenAgent",
        "_register_mcp_tools"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent.get_capabilities",
      "type": "function",
      "name": "get_capabilities",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent.get_capabilities() 方法",
      "tags": [
        "ConfigDrivenAgent",
        "get_capabilities"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent.handle_task",
      "type": "function",
      "name": "handle_task",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent.handle_task(task) 异步方法",
      "tags": [
        "ConfigDrivenAgent",
        "handle_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._handle_react",
      "type": "function",
      "name": "_handle_react",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._handle_react(task) 异步方法",
      "tags": [
        "ConfigDrivenAgent",
        "_handle_react"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._handle_rewoo",
      "type": "function",
      "name": "_handle_rewoo",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._handle_rewoo(task) 异步方法",
      "tags": [
        "ConfigDrivenAgent",
        "_handle_rewoo"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._handle_plan_exec",
      "type": "function",
      "name": "_handle_plan_exec",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._handle_plan_exec(task) 异步方法",
      "tags": [
        "ConfigDrivenAgent",
        "_handle_plan_exec"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._handle_reflexion",
      "type": "function",
      "name": "_handle_reflexion",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._handle_reflexion(task) 异步方法",
      "tags": [
        "ConfigDrivenAgent",
        "_handle_reflexion"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._handle_direct",
      "type": "function",
      "name": "_handle_direct",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._handle_direct(task) 异步方法",
      "tags": [
        "ConfigDrivenAgent",
        "_handle_direct"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent.handle_task_with_feedback",
      "type": "function",
      "name": "handle_task_with_feedback",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent.handle_task_with_feedback(task, feedback) 异步方法",
      "tags": [
        "ConfigDrivenAgent",
        "handle_task_with_feedback"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._wrap_llm_client",
      "type": "function",
      "name": "_wrap_llm_client",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._wrap_llm_client(llm_client) 方法",
      "tags": [
        "ConfigDrivenAgent",
        "_wrap_llm_client"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._handle_llm_generate",
      "type": "function",
      "name": "_handle_llm_generate",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._handle_llm_generate(task) 异步方法",
      "tags": [
        "ConfigDrivenAgent",
        "_handle_llm_generate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._handle_tool_call",
      "type": "function",
      "name": "_handle_tool_call",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._handle_tool_call(task) 异步方法",
      "tags": [
        "ConfigDrivenAgent",
        "_handle_tool_call"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._handle_custom",
      "type": "function",
      "name": "_handle_custom",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._handle_custom(task) 异步方法",
      "tags": [
        "ConfigDrivenAgent",
        "_handle_custom"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._resolve_tool",
      "type": "function",
      "name": "_resolve_tool",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._resolve_tool(task) 方法",
      "tags": [
        "ConfigDrivenAgent",
        "_resolve_tool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._call_llm",
      "type": "function",
      "name": "_call_llm",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._call_llm(messages) 异步方法",
      "tags": [
        "ConfigDrivenAgent",
        "_call_llm"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._parse_llm_response",
      "type": "function",
      "name": "_parse_llm_response",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._parse_llm_response(response) 方法",
      "tags": [
        "ConfigDrivenAgent",
        "_parse_llm_response"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigDrivenAgent._import_handler",
      "type": "function",
      "name": "_import_handler",
      "filePath": "src/agentkit/core/config_driven.py",
      "layer": "service",
      "summary": "ConfigDrivenAgent._import_handler(dotted_path) 方法",
      "tags": [
        "ConfigDrivenAgent",
        "_import_handler"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TaskDispatcher",
      "type": "class",
      "name": "TaskDispatcher",
      "filePath": "src/agentkit/core/dispatcher.py",
      "layer": "service",
      "summary": "任务分发器，通过 Redis Queue 将任务分发给 Agent",
      "tags": [
        "TaskDispatcher"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:TaskDispatcher.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/dispatcher.py",
      "layer": "service",
      "summary": "TaskDispatcher.__init__(redis_factory, session_factory, agent_model, task_model, task_log_model) 方法",
      "tags": [
        "TaskDispatcher",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskDispatcher._get_redis",
      "type": "function",
      "name": "_get_redis",
      "filePath": "src/agentkit/core/dispatcher.py",
      "layer": "service",
      "summary": "TaskDispatcher._get_redis() 异步方法",
      "tags": [
        "TaskDispatcher",
        "_get_redis"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskDispatcher.dispatch",
      "type": "function",
      "name": "dispatch",
      "filePath": "src/agentkit/core/dispatcher.py",
      "layer": "service",
      "summary": "TaskDispatcher.dispatch(task, organization_id, created_by) 异步方法",
      "tags": [
        "TaskDispatcher",
        "dispatch"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskDispatcher.cancel_task",
      "type": "function",
      "name": "cancel_task",
      "filePath": "src/agentkit/core/dispatcher.py",
      "layer": "service",
      "summary": "TaskDispatcher.cancel_task(task_id) 异步方法",
      "tags": [
        "TaskDispatcher",
        "cancel_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskDispatcher.get_task_status",
      "type": "function",
      "name": "get_task_status",
      "filePath": "src/agentkit/core/dispatcher.py",
      "layer": "service",
      "summary": "TaskDispatcher.get_task_status(task_id) 异步方法",
      "tags": [
        "TaskDispatcher",
        "get_task_status"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskDispatcher.handle_result",
      "type": "function",
      "name": "handle_result",
      "filePath": "src/agentkit/core/dispatcher.py",
      "layer": "service",
      "summary": "TaskDispatcher.handle_result(result) 异步方法",
      "tags": [
        "TaskDispatcher",
        "handle_result"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskDispatcher.handle_progress",
      "type": "function",
      "name": "handle_progress",
      "filePath": "src/agentkit/core/dispatcher.py",
      "layer": "service",
      "summary": "TaskDispatcher.handle_progress(progress) 异步方法",
      "tags": [
        "TaskDispatcher",
        "handle_progress"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskDispatcher.retry_failed_tasks",
      "type": "function",
      "name": "retry_failed_tasks",
      "filePath": "src/agentkit/core/dispatcher.py",
      "layer": "service",
      "summary": "TaskDispatcher.retry_failed_tasks(max_retries) 异步方法",
      "tags": [
        "TaskDispatcher",
        "retry_failed_tasks"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskDispatcher._write_log",
      "type": "function",
      "name": "_write_log",
      "filePath": "src/agentkit/core/dispatcher.py",
      "layer": "service",
      "summary": "TaskDispatcher._write_log(db, task_id, agent_id, log_level, message, extra_metadata) 异步方法",
      "tags": [
        "TaskDispatcher",
        "_write_log"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskDispatcher._trigger_callback",
      "type": "function",
      "name": "_trigger_callback",
      "filePath": "src/agentkit/core/dispatcher.py",
      "layer": "service",
      "summary": "TaskDispatcher._trigger_callback(callback_url, result) 异步方法",
      "tags": [
        "TaskDispatcher",
        "_trigger_callback"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskDispatcher._task_to_dict",
      "type": "function",
      "name": "_task_to_dict",
      "filePath": "src/agentkit/core/dispatcher.py",
      "layer": "service",
      "summary": "TaskDispatcher._task_to_dict(task) 方法",
      "tags": [
        "TaskDispatcher",
        "_task_to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentFrameworkError",
      "type": "class",
      "name": "AgentFrameworkError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "Agent 框架基础异常",
      "tags": [
        "AgentFrameworkError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentFrameworkError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "AgentFrameworkError.__init__(message) 方法",
      "tags": [
        "AgentFrameworkError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentNotFoundError",
      "type": "class",
      "name": "AgentNotFoundError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "AgentNotFoundError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "AgentNotFoundError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentNotFoundError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "AgentNotFoundError.__init__(agent_name) 方法",
      "tags": [
        "AgentNotFoundError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentAlreadyRegisteredError",
      "type": "class",
      "name": "AgentAlreadyRegisteredError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "AgentAlreadyRegisteredError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "AgentAlreadyRegisteredError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentAlreadyRegisteredError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "AgentAlreadyRegisteredError.__init__(agent_name) 方法",
      "tags": [
        "AgentAlreadyRegisteredError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentUnavailableError",
      "type": "class",
      "name": "AgentUnavailableError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "AgentUnavailableError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "AgentUnavailableError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentUnavailableError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "AgentUnavailableError.__init__(agent_name, status) 方法",
      "tags": [
        "AgentUnavailableError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TaskNotFoundError",
      "type": "class",
      "name": "TaskNotFoundError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "TaskNotFoundError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "TaskNotFoundError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskNotFoundError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "TaskNotFoundError.__init__(task_id) 方法",
      "tags": [
        "TaskNotFoundError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TaskDispatchError",
      "type": "class",
      "name": "TaskDispatchError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "TaskDispatchError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "TaskDispatchError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskDispatchError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "TaskDispatchError.__init__(task_id, reason) 方法",
      "tags": [
        "TaskDispatchError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TaskExecutionError",
      "type": "class",
      "name": "TaskExecutionError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "TaskExecutionError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "TaskExecutionError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskExecutionError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "TaskExecutionError.__init__(task_id, agent_name, reason) 方法",
      "tags": [
        "TaskExecutionError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TaskTimeoutError",
      "type": "class",
      "name": "TaskTimeoutError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "TaskTimeoutError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "TaskTimeoutError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskTimeoutError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "TaskTimeoutError.__init__(task_id, timeout_seconds) 方法",
      "tags": [
        "TaskTimeoutError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TaskCancelledError",
      "type": "class",
      "name": "TaskCancelledError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "TaskCancelledError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "TaskCancelledError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskCancelledError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "TaskCancelledError.__init__(task_id) 方法",
      "tags": [
        "TaskCancelledError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:NoAvailableAgentError",
      "type": "class",
      "name": "NoAvailableAgentError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "NoAvailableAgentError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "NoAvailableAgentError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:NoAvailableAgentError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "NoAvailableAgentError.__init__(task_type) 方法",
      "tags": [
        "NoAvailableAgentError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ConfigValidationError",
      "type": "class",
      "name": "ConfigValidationError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "ConfigValidationError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "ConfigValidationError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfigValidationError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "ConfigValidationError.__init__(agent_name, key, reason) 方法",
      "tags": [
        "ConfigValidationError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentNotReadyError",
      "type": "class",
      "name": "AgentNotReadyError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "AgentNotReadyError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "AgentNotReadyError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentNotReadyError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "AgentNotReadyError.__init__(agent_name) 方法",
      "tags": [
        "AgentNotReadyError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillNotFoundError",
      "type": "class",
      "name": "SkillNotFoundError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "SkillNotFoundError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "SkillNotFoundError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillNotFoundError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "SkillNotFoundError.__init__(skill_name) 方法",
      "tags": [
        "SkillNotFoundError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ToolNotFoundError",
      "type": "class",
      "name": "ToolNotFoundError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "ToolNotFoundError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "ToolNotFoundError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ToolNotFoundError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "ToolNotFoundError.__init__(tool_name) 方法",
      "tags": [
        "ToolNotFoundError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ToolExecutionError",
      "type": "class",
      "name": "ToolExecutionError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "ToolExecutionError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "ToolExecutionError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ToolExecutionError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "ToolExecutionError.__init__(tool_name, reason) 方法",
      "tags": [
        "ToolExecutionError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SchemaValidationError",
      "type": "class",
      "name": "SchemaValidationError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "SchemaValidationError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "SchemaValidationError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SchemaValidationError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "SchemaValidationError.__init__(agent_name, detail) 方法",
      "tags": [
        "SchemaValidationError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:HandoffError",
      "type": "class",
      "name": "HandoffError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "HandoffError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "HandoffError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HandoffError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "HandoffError.__init__(source, target, reason) 方法",
      "tags": [
        "HandoffError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EvolutionError",
      "type": "class",
      "name": "EvolutionError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "EvolutionError类，继承自AgentFrameworkError，包含方法: __init__",
      "tags": [
        "EvolutionError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "EvolutionError.__init__(agent_name, reason) 方法",
      "tags": [
        "EvolutionError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LLMError",
      "type": "class",
      "name": "LLMError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "LLM 基础异常",
      "tags": [
        "LLMError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "LLMError.__init__(message) 方法",
      "tags": [
        "LLMError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LLMProviderError",
      "type": "class",
      "name": "LLMProviderError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "LLM Provider 特定异常",
      "tags": [
        "LLMProviderError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMProviderError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "LLMProviderError.__init__(provider, reason) 方法",
      "tags": [
        "LLMProviderError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ModelNotFoundError",
      "type": "class",
      "name": "ModelNotFoundError",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "模型别名未找到异常",
      "tags": [
        "ModelNotFoundError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ModelNotFoundError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/exceptions.py",
      "layer": "service",
      "summary": "ModelNotFoundError.__init__(model) 方法",
      "tags": [
        "ModelNotFoundError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:HeadroomCompressor",
      "type": "class",
      "name": "HeadroomCompressor",
      "filePath": "src/agentkit/core/headroom_compressor.py",
      "layer": "service",
      "summary": "基于 headroom-ai 的上下文压缩器",
      "tags": [
        "HeadroomCompressor"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:HeadroomCompressor.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/headroom_compressor.py",
      "layer": "service",
      "summary": "HeadroomCompressor.__init__(config) 方法",
      "tags": [
        "HeadroomCompressor",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HeadroomCompressor.is_available",
      "type": "function",
      "name": "is_available",
      "filePath": "src/agentkit/core/headroom_compressor.py",
      "layer": "service",
      "summary": "HeadroomCompressor.is_available() 方法",
      "tags": [
        "HeadroomCompressor",
        "is_available"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HeadroomCompressor.compress",
      "type": "function",
      "name": "compress",
      "filePath": "src/agentkit/core/headroom_compressor.py",
      "layer": "service",
      "summary": "HeadroomCompressor.compress(messages) 异步方法",
      "tags": [
        "HeadroomCompressor",
        "compress"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HeadroomCompressor.compress_tool_result",
      "type": "function",
      "name": "compress_tool_result",
      "filePath": "src/agentkit/core/headroom_compressor.py",
      "layer": "service",
      "summary": "HeadroomCompressor.compress_tool_result(tool_name, result) 异步方法",
      "tags": [
        "HeadroomCompressor",
        "compress_tool_result"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HeadroomCompressor._detect_content_type",
      "type": "function",
      "name": "_detect_content_type",
      "filePath": "src/agentkit/core/headroom_compressor.py",
      "layer": "service",
      "summary": "HeadroomCompressor._detect_content_type(content) 方法",
      "tags": [
        "HeadroomCompressor",
        "_detect_content_type"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HeadroomCompressor._compress_with_headroom",
      "type": "function",
      "name": "_compress_with_headroom",
      "filePath": "src/agentkit/core/headroom_compressor.py",
      "layer": "service",
      "summary": "HeadroomCompressor._compress_with_headroom(content, compressor) 方法",
      "tags": [
        "HeadroomCompressor",
        "_compress_with_headroom"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HeadroomCompressor._store_ccr",
      "type": "function",
      "name": "_store_ccr",
      "filePath": "src/agentkit/core/headroom_compressor.py",
      "layer": "service",
      "summary": "HeadroomCompressor._store_ccr(original) 方法",
      "tags": [
        "HeadroomCompressor",
        "_store_ccr"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HeadroomCompressor._evict_expired",
      "type": "function",
      "name": "_evict_expired",
      "filePath": "src/agentkit/core/headroom_compressor.py",
      "layer": "service",
      "summary": "HeadroomCompressor._evict_expired() 方法",
      "tags": [
        "HeadroomCompressor",
        "_evict_expired"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HeadroomCompressor.retrieve",
      "type": "function",
      "name": "retrieve",
      "filePath": "src/agentkit/core/headroom_compressor.py",
      "layer": "service",
      "summary": "HeadroomCompressor.retrieve(ccr_hash, query) 方法",
      "tags": [
        "HeadroomCompressor",
        "retrieve"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:StructuredFormatter",
      "type": "class",
      "name": "StructuredFormatter",
      "filePath": "src/agentkit/core/logging.py",
      "layer": "service",
      "summary": "JSON structured log formatter.",
      "tags": [
        "StructuredFormatter"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StructuredFormatter.format",
      "type": "function",
      "name": "format",
      "filePath": "src/agentkit/core/logging.py",
      "layer": "service",
      "summary": "StructuredFormatter.format(record) 方法",
      "tags": [
        "StructuredFormatter",
        "format"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentRole",
      "type": "class",
      "name": "AgentRole",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Agent 角色枚举",
      "tags": [
        "AgentRole"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SubTaskStatus",
      "type": "class",
      "name": "SubTaskStatus",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "子任务状态",
      "tags": [
        "SubTaskStatus"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SubTask",
      "type": "class",
      "name": "SubTask",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "子任务定义",
      "tags": [
        "SubTask"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:OrchestrationPlan",
      "type": "class",
      "name": "OrchestrationPlan",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "编排计划",
      "tags": [
        "OrchestrationPlan"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:OrchestrationResult",
      "type": "class",
      "name": "OrchestrationResult",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "编排结果",
      "tags": [
        "OrchestrationResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:OrchestratorConfig",
      "type": "class",
      "name": "OrchestratorConfig",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator 配置",
      "tags": [
        "OrchestratorConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Orchestrator",
      "type": "class",
      "name": "Orchestrator",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "多 Agent 协作编排器",
      "tags": [
        "Orchestrator"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:Orchestrator.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator.__init__(agent_pool, workspace, llm_gateway, max_parallel, subtask_timeout, goal_planner, plan_executor, plan_checker, config, message_bus) 方法",
      "tags": [
        "Orchestrator",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator.execute(task) 异步方法",
      "tags": [
        "Orchestrator",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator._decompose_task",
      "type": "function",
      "name": "_decompose_task",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator._decompose_task(task) 异步方法",
      "tags": [
        "Orchestrator",
        "_decompose_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator._llm_decompose",
      "type": "function",
      "name": "_llm_decompose",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator._llm_decompose(task) 异步方法",
      "tags": [
        "Orchestrator",
        "_llm_decompose"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator._build_parallel_groups",
      "type": "function",
      "name": "_build_parallel_groups",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator._build_parallel_groups(subtasks) 方法",
      "tags": [
        "Orchestrator",
        "_build_parallel_groups"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator._execute_plan",
      "type": "function",
      "name": "_execute_plan",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator._execute_plan(plan, original_task) 异步方法",
      "tags": [
        "Orchestrator",
        "_execute_plan"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator._execute_subtask",
      "type": "function",
      "name": "_execute_subtask",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator._execute_subtask(subtask, input_data, original_task) 异步方法",
      "tags": [
        "Orchestrator",
        "_execute_subtask"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator._inject_dependency_results",
      "type": "function",
      "name": "_inject_dependency_results",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator._inject_dependency_results(subtask, subtask_results) 方法",
      "tags": [
        "Orchestrator",
        "_inject_dependency_results"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator._aggregate_results",
      "type": "function",
      "name": "_aggregate_results",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator._aggregate_results(plan, subtask_results, original_task) 异步方法",
      "tags": [
        "Orchestrator",
        "_aggregate_results"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator._get_available_skill_names",
      "type": "function",
      "name": "_get_available_skill_names",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator._get_available_skill_names() 方法",
      "tags": [
        "Orchestrator",
        "_get_available_skill_names"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator._convert_execution_plan_to_subtasks",
      "type": "function",
      "name": "_convert_execution_plan_to_subtasks",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator._convert_execution_plan_to_subtasks(execution_plan, parent_task_id, default_agent, default_task_type, original_input) 方法",
      "tags": [
        "Orchestrator",
        "_convert_execution_plan_to_subtasks"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator._match_agent_for_skills",
      "type": "function",
      "name": "_match_agent_for_skills",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator._match_agent_for_skills(required_skills) 方法",
      "tags": [
        "Orchestrator",
        "_match_agent_for_skills"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator.execute_adaptive",
      "type": "function",
      "name": "execute_adaptive",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator.execute_adaptive(task) 异步方法",
      "tags": [
        "Orchestrator",
        "execute_adaptive"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator._evaluate_quality",
      "type": "function",
      "name": "_evaluate_quality",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator._evaluate_quality(task, result) 异步方法",
      "tags": [
        "Orchestrator",
        "_evaluate_quality"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator._rule_based_evaluate",
      "type": "function",
      "name": "_rule_based_evaluate",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator._rule_based_evaluate(result) 方法",
      "tags": [
        "Orchestrator",
        "_rule_based_evaluate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator._llm_evaluate",
      "type": "function",
      "name": "_llm_evaluate",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator._llm_evaluate(task, result) 异步方法",
      "tags": [
        "Orchestrator",
        "_llm_evaluate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Orchestrator._reexecute_failed",
      "type": "function",
      "name": "_reexecute_failed",
      "filePath": "src/agentkit/core/orchestrator.py",
      "layer": "service",
      "summary": "Orchestrator._reexecute_failed(task, previous_result, quality) 异步方法",
      "tags": [
        "Orchestrator",
        "_reexecute_failed"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CheckStatus",
      "type": "class",
      "name": "CheckStatus",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "检查结果状态",
      "tags": [
        "CheckStatus"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CheckResult",
      "type": "class",
      "name": "CheckResult",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "单步检查结果",
      "tags": [
        "CheckResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ReviewReport",
      "type": "class",
      "name": "ReviewReport",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "复盘报告",
      "tags": [
        "ReviewReport"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReviewReport.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "ReviewReport.to_dict() 方法",
      "tags": [
        "ReviewReport",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:QualityGate",
      "type": "class",
      "name": "QualityGate",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "质量门控",
      "tags": [
        "QualityGate"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:QualityGate.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "QualityGate.__init__(config, custom_validator) 方法",
      "tags": [
        "QualityGate",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:QualityGate.check",
      "type": "function",
      "name": "check",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "QualityGate.check(step, exec_result) 方法",
      "tags": [
        "QualityGate",
        "check"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:QualityGate._check_required_fields",
      "type": "function",
      "name": "_check_required_fields",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "QualityGate._check_required_fields(result) 方法",
      "tags": [
        "QualityGate",
        "_check_required_fields"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:QualityGate._check_min_word_count",
      "type": "function",
      "name": "_check_min_word_count",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "QualityGate._check_min_word_count(result) 方法",
      "tags": [
        "QualityGate",
        "_check_min_word_count"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:QualityGate._check_custom",
      "type": "function",
      "name": "_check_custom",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "QualityGate._check_custom(result) 方法",
      "tags": [
        "QualityGate",
        "_check_custom"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:QualityGate._compute_quality_score",
      "type": "function",
      "name": "_compute_quality_score",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "QualityGate._compute_quality_score(failure_count) 方法",
      "tags": [
        "QualityGate",
        "_compute_quality_score"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RuleBasedStepReflector",
      "type": "class",
      "name": "RuleBasedStepReflector",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "基于规则的步骤反思器",
      "tags": [
        "RuleBasedStepReflector"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RuleBasedStepReflector.reflect_step",
      "type": "function",
      "name": "reflect_step",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "RuleBasedStepReflector.reflect_step(step, exec_result) 异步方法",
      "tags": [
        "RuleBasedStepReflector",
        "reflect_step"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PlanChecker",
      "type": "class",
      "name": "PlanChecker",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "计划检查器",
      "tags": [
        "PlanChecker"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:PlanChecker.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "PlanChecker.__init__(quality_gate, quality_gate_config, custom_validator, reflector, experience_store, max_check_retries, quality_threshold, step_quality_configs) 方法",
      "tags": [
        "PlanChecker",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanChecker.check_step",
      "type": "function",
      "name": "check_step",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "PlanChecker.check_step(step, exec_result) 异步方法",
      "tags": [
        "PlanChecker",
        "check_step"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanChecker.review_plan",
      "type": "function",
      "name": "review_plan",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "PlanChecker.review_plan(plan, plan_result, task_type, goal) 异步方法",
      "tags": [
        "PlanChecker",
        "review_plan"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanChecker.should_retry",
      "type": "function",
      "name": "should_retry",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "PlanChecker.should_retry(check_result, retry_count) 方法",
      "tags": [
        "PlanChecker",
        "should_retry"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanChecker.should_request_human",
      "type": "function",
      "name": "should_request_human",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "PlanChecker.should_request_human(check_result, retry_count) 方法",
      "tags": [
        "PlanChecker",
        "should_request_human"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanChecker.make_step_complete_callback",
      "type": "function",
      "name": "make_step_complete_callback",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "PlanChecker.make_step_complete_callback() 方法",
      "tags": [
        "PlanChecker",
        "make_step_complete_callback"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanChecker._collect_failure_reasons",
      "type": "function",
      "name": "_collect_failure_reasons",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "PlanChecker._collect_failure_reasons(plan_result) 方法",
      "tags": [
        "PlanChecker",
        "_collect_failure_reasons"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanChecker._determine_outcome",
      "type": "function",
      "name": "_determine_outcome",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "PlanChecker._determine_outcome(plan_result) 方法",
      "tags": [
        "PlanChecker",
        "_determine_outcome"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanChecker._generate_optimization_tips",
      "type": "function",
      "name": "_generate_optimization_tips",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "PlanChecker._generate_optimization_tips(plan_result, quality_scores) 方法",
      "tags": [
        "PlanChecker",
        "_generate_optimization_tips"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanChecker._write_experience",
      "type": "function",
      "name": "_write_experience",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "PlanChecker._write_experience(report, plan, plan_result, task_type, goal) 异步方法",
      "tags": [
        "PlanChecker",
        "_write_experience"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanChecker.reset",
      "type": "function",
      "name": "reset",
      "filePath": "src/agentkit/core/plan_checker.py",
      "layer": "service",
      "summary": "PlanChecker.reset() 方法",
      "tags": [
        "PlanChecker",
        "reset"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:FailureAction",
      "type": "class",
      "name": "FailureAction",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "步骤失败后的处理策略",
      "tags": [
        "FailureAction"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:StepExecutionResult",
      "type": "class",
      "name": "StepExecutionResult",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "单个步骤的执行结果",
      "tags": [
        "StepExecutionResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PlanExecutionResult",
      "type": "class",
      "name": "PlanExecutionResult",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "整个计划的执行结果",
      "tags": [
        "PlanExecutionResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanExecutionResult.completed_steps",
      "type": "function",
      "name": "completed_steps",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "PlanExecutionResult.completed_steps() 方法",
      "tags": [
        "PlanExecutionResult",
        "completed_steps"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanExecutionResult.failed_steps",
      "type": "function",
      "name": "failed_steps",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "PlanExecutionResult.failed_steps() 方法",
      "tags": [
        "PlanExecutionResult",
        "failed_steps"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanExecutionResult.skipped_steps",
      "type": "function",
      "name": "skipped_steps",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "PlanExecutionResult.skipped_steps() 方法",
      "tags": [
        "PlanExecutionResult",
        "skipped_steps"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PlanExecutor",
      "type": "class",
      "name": "PlanExecutor",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "执行计划执行器",
      "tags": [
        "PlanExecutor"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:PlanExecutor.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "PlanExecutor.__init__(agent_pool, max_retries, step_timeout, max_parallel, base_retry_delay, max_retry_delay, on_step_complete, on_step_failed, on_human_intervention) 方法",
      "tags": [
        "PlanExecutor",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanExecutor.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "PlanExecutor.execute(plan, original_task) 异步方法",
      "tags": [
        "PlanExecutor",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanExecutor._execute_step_with_retry",
      "type": "function",
      "name": "_execute_step_with_retry",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "PlanExecutor._execute_step_with_retry(step, input_data, original_task) 异步方法",
      "tags": [
        "PlanExecutor",
        "_execute_step_with_retry"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanExecutor._execute_step_once",
      "type": "function",
      "name": "_execute_step_once",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "PlanExecutor._execute_step_once(step, input_data, original_task) 异步方法",
      "tags": [
        "PlanExecutor",
        "_execute_step_once"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanExecutor._handle_step_failure",
      "type": "function",
      "name": "_handle_step_failure",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "PlanExecutor._handle_step_failure(step, exec_result, step_map, step_results, plan) 异步方法",
      "tags": [
        "PlanExecutor",
        "_handle_step_failure"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanExecutor._default_failure_action",
      "type": "function",
      "name": "_default_failure_action",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "PlanExecutor._default_failure_action(step, exec_result) 方法",
      "tags": [
        "PlanExecutor",
        "_default_failure_action"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanExecutor._skip_dependent_steps",
      "type": "function",
      "name": "_skip_dependent_steps",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "PlanExecutor._skip_dependent_steps(failed_step_id, step_map, step_results, plan) 方法",
      "tags": [
        "PlanExecutor",
        "_skip_dependent_steps"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanExecutor._abort_remaining_steps",
      "type": "function",
      "name": "_abort_remaining_steps",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "PlanExecutor._abort_remaining_steps(step_map, step_results, plan) 方法",
      "tags": [
        "PlanExecutor",
        "_abort_remaining_steps"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanExecutor._inject_dependency_results",
      "type": "function",
      "name": "_inject_dependency_results",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "PlanExecutor._inject_dependency_results(step, step_results) 方法",
      "tags": [
        "PlanExecutor",
        "_inject_dependency_results"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanExecutor._determine_overall_status",
      "type": "function",
      "name": "_determine_overall_status",
      "filePath": "src/agentkit/core/plan_executor.py",
      "layer": "service",
      "summary": "PlanExecutor._determine_overall_status(plan, step_results) 方法",
      "tags": [
        "PlanExecutor",
        "_determine_overall_status"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PlanStepStatus",
      "type": "class",
      "name": "PlanStepStatus",
      "filePath": "src/agentkit/core/plan_schema.py",
      "layer": "service",
      "summary": "计划步骤状态",
      "tags": [
        "PlanStepStatus"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillGapLevel",
      "type": "class",
      "name": "SkillGapLevel",
      "filePath": "src/agentkit/core/plan_schema.py",
      "layer": "service",
      "summary": "能力缺口严重程度",
      "tags": [
        "SkillGapLevel"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillGap",
      "type": "class",
      "name": "SkillGap",
      "filePath": "src/agentkit/core/plan_schema.py",
      "layer": "service",
      "summary": "能力缺口：某个步骤需要的 Skill 不可用",
      "tags": [
        "SkillGap"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PlanStep",
      "type": "class",
      "name": "PlanStep",
      "filePath": "src/agentkit/core/plan_schema.py",
      "layer": "service",
      "summary": "计划步骤",
      "tags": [
        "PlanStep"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PlanStep.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/core/plan_schema.py",
      "layer": "service",
      "summary": "PlanStep.to_dict() 方法",
      "tags": [
        "PlanStep",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ExecutionPlan",
      "type": "class",
      "name": "ExecutionPlan",
      "filePath": "src/agentkit/core/plan_schema.py",
      "layer": "service",
      "summary": "执行计划",
      "tags": [
        "ExecutionPlan"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:ExecutionPlan.has_skill_gaps",
      "type": "function",
      "name": "has_skill_gaps",
      "filePath": "src/agentkit/core/plan_schema.py",
      "layer": "service",
      "summary": "ExecutionPlan.has_skill_gaps() 方法",
      "tags": [
        "ExecutionPlan",
        "has_skill_gaps"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ExecutionPlan.get_step",
      "type": "function",
      "name": "get_step",
      "filePath": "src/agentkit/core/plan_schema.py",
      "layer": "service",
      "summary": "ExecutionPlan.get_step(step_id) 方法",
      "tags": [
        "ExecutionPlan",
        "get_step"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ExecutionPlan.to_readable",
      "type": "function",
      "name": "to_readable",
      "filePath": "src/agentkit/core/plan_schema.py",
      "layer": "service",
      "summary": "ExecutionPlan.to_readable() 方法",
      "tags": [
        "ExecutionPlan",
        "to_readable"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ExecutionPlan.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/core/plan_schema.py",
      "layer": "service",
      "summary": "ExecutionPlan.to_dict() 方法",
      "tags": [
        "ExecutionPlan",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TaskStatus",
      "type": "class",
      "name": "TaskStatus",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "任务状态枚举",
      "tags": [
        "TaskStatus"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentStatus",
      "type": "class",
      "name": "AgentStatus",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "Agent 状态枚举",
      "tags": [
        "AgentStatus"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentCapability",
      "type": "class",
      "name": "AgentCapability",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "Agent 能力声明",
      "tags": [
        "AgentCapability"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentCapability.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "AgentCapability.to_dict() 方法",
      "tags": [
        "AgentCapability",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentCapability.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "AgentCapability.from_dict(cls, data) 方法",
      "tags": [
        "AgentCapability",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TaskMessage",
      "type": "class",
      "name": "TaskMessage",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "任务消息 - 从调度器发往 Agent",
      "tags": [
        "TaskMessage"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskMessage.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "TaskMessage.to_dict() 方法",
      "tags": [
        "TaskMessage",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskMessage.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "TaskMessage.from_dict(cls, data) 方法",
      "tags": [
        "TaskMessage",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TaskResult",
      "type": "class",
      "name": "TaskResult",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "任务结果 - 从 Agent 返回",
      "tags": [
        "TaskResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskResult.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "TaskResult.to_dict() 方法",
      "tags": [
        "TaskResult",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskResult.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "TaskResult.from_dict(cls, data) 方法",
      "tags": [
        "TaskResult",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TaskProgress",
      "type": "class",
      "name": "TaskProgress",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "进度上报 - Agent 执行过程中上报",
      "tags": [
        "TaskProgress"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskProgress.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "TaskProgress.to_dict() 方法",
      "tags": [
        "TaskProgress",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskProgress.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "TaskProgress.from_dict(cls, data) 方法",
      "tags": [
        "TaskProgress",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:HandoffMessage",
      "type": "class",
      "name": "HandoffMessage",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "任务转交消息 - Agent 间 Handoff",
      "tags": [
        "HandoffMessage"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HandoffMessage.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "HandoffMessage.to_dict() 方法",
      "tags": [
        "HandoffMessage",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HandoffMessage.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "HandoffMessage.from_dict(cls, data) 方法",
      "tags": [
        "HandoffMessage",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EvolutionEvent",
      "type": "class",
      "name": "EvolutionEvent",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "进化事件 - 记录 Agent 的自我进化变更",
      "tags": [
        "EvolutionEvent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionEvent.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "EvolutionEvent.to_dict() 方法",
      "tags": [
        "EvolutionEvent",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CancellationToken",
      "type": "class",
      "name": "CancellationToken",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "协作式取消令牌，用于通知 ReAct 循环和 Agent 停止执行。",
      "tags": [
        "CancellationToken"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CancellationToken.cancel",
      "type": "function",
      "name": "cancel",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "CancellationToken.cancel() 方法",
      "tags": [
        "CancellationToken",
        "cancel"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CancellationToken.is_cancelled",
      "type": "function",
      "name": "is_cancelled",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "CancellationToken.is_cancelled() 方法",
      "tags": [
        "CancellationToken",
        "is_cancelled"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CancellationToken.check",
      "type": "function",
      "name": "check",
      "filePath": "src/agentkit/core/protocol.py",
      "layer": "service",
      "summary": "CancellationToken.check() 方法",
      "tags": [
        "CancellationToken",
        "check"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ReActStep",
      "type": "class",
      "name": "ReActStep",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReAct 单步记录",
      "tags": [
        "ReActStep"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ReActResult",
      "type": "class",
      "name": "ReActResult",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReAct 执行结果",
      "tags": [
        "ReActResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ReActEvent",
      "type": "class",
      "name": "ReActEvent",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReAct 执行事件",
      "tags": [
        "ReActEvent"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ReActEngine",
      "type": "class",
      "name": "ReActEngine",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReAct 推理-行动循环引擎",
      "tags": [
        "ReActEngine"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:ReActEngine.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReActEngine.__init__(llm_gateway, max_steps, default_timeout, parallel_tools) 方法",
      "tags": [
        "ReActEngine",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReActEngine.reset",
      "type": "function",
      "name": "reset",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReActEngine.reset() 方法",
      "tags": [
        "ReActEngine",
        "reset"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReActEngine.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReActEngine.execute(messages, tools, model, agent_name, task_type, system_prompt, trace_recorder, memory_retriever, task_id, compressor, retrieval_config, cancellation_token, timeout_seconds, confirmation_handler) 异步方法",
      "tags": [
        "ReActEngine",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReActEngine._execute_loop",
      "type": "function",
      "name": "_execute_loop",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReActEngine._execute_loop(messages, tools, model, agent_name, task_type, system_prompt, trace_recorder, memory_retriever, task_id, compressor, retrieval_config, cancellation_token, confirmation_handler) 异步方法",
      "tags": [
        "ReActEngine",
        "_execute_loop"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReActEngine.execute_stream",
      "type": "function",
      "name": "execute_stream",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReActEngine.execute_stream(messages, tools, model, agent_name, task_type, system_prompt, trace_recorder, memory_retriever, task_id, compressor, retrieval_config, cancellation_token, timeout_seconds, confirmation_handler) 异步方法",
      "tags": [
        "ReActEngine",
        "execute_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReActEngine._build_tool_schemas",
      "type": "function",
      "name": "_build_tool_schemas",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReActEngine._build_tool_schemas(tools) 方法",
      "tags": [
        "ReActEngine",
        "_build_tool_schemas"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReActEngine._build_response_from_stream",
      "type": "function",
      "name": "_build_response_from_stream",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReActEngine._build_response_from_stream(content, tool_calls, usage, model) 方法",
      "tags": [
        "ReActEngine",
        "_build_response_from_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReActEngine._find_tool",
      "type": "function",
      "name": "_find_tool",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReActEngine._find_tool(name, tools) 方法",
      "tags": [
        "ReActEngine",
        "_find_tool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReActEngine._should_compress",
      "type": "function",
      "name": "_should_compress",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReActEngine._should_compress(conversation, compressor) 方法",
      "tags": [
        "ReActEngine",
        "_should_compress"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReActEngine._build_tool_result_message",
      "type": "function",
      "name": "_build_tool_result_message",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReActEngine._build_tool_result_message(tool_call_id, result, compressor, tool_name) 异步方法",
      "tags": [
        "ReActEngine",
        "_build_tool_result_message"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReActEngine._execute_tool",
      "type": "function",
      "name": "_execute_tool",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReActEngine._execute_tool(tool_name, arguments, tools) 异步方法",
      "tags": [
        "ReActEngine",
        "_execute_tool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReActEngine._execute_tool_with_confirmation",
      "type": "function",
      "name": "_execute_tool_with_confirmation",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReActEngine._execute_tool_with_confirmation(tc, tools, step, confirmation_handler) 异步方法",
      "tags": [
        "ReActEngine",
        "_execute_tool_with_confirmation"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReActEngine._should_execute_parallel",
      "type": "function",
      "name": "_should_execute_parallel",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReActEngine._should_execute_parallel(tool_calls) 方法",
      "tags": [
        "ReActEngine",
        "_should_execute_parallel"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReActEngine._get_parallelizable_indices",
      "type": "function",
      "name": "_get_parallelizable_indices",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReActEngine._get_parallelizable_indices(tool_calls) 方法",
      "tags": [
        "ReActEngine",
        "_get_parallelizable_indices"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReActEngine._parse_text_tool_calls",
      "type": "function",
      "name": "_parse_text_tool_calls",
      "filePath": "src/agentkit/core/react.py",
      "layer": "service",
      "summary": "ReActEngine._parse_text_tool_calls(content) 方法",
      "tags": [
        "ReActEngine",
        "_parse_text_tool_calls"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ReflexionReflection",
      "type": "class",
      "name": "ReflexionReflection",
      "filePath": "src/agentkit/core/reflexion.py",
      "layer": "service",
      "summary": "单次反思记录",
      "tags": [
        "ReflexionReflection"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ReflexionResult",
      "type": "class",
      "name": "ReflexionResult",
      "filePath": "src/agentkit/core/reflexion.py",
      "layer": "service",
      "summary": "Reflexion 执行结果",
      "tags": [
        "ReflexionResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ReflexionEngine",
      "type": "class",
      "name": "ReflexionEngine",
      "filePath": "src/agentkit/core/reflexion.py",
      "layer": "service",
      "summary": "Reflexion 执行引擎",
      "tags": [
        "ReflexionEngine"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:ReflexionEngine.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/reflexion.py",
      "layer": "service",
      "summary": "ReflexionEngine.__init__(llm_gateway, max_steps, max_reflections, quality_threshold, default_timeout) 方法",
      "tags": [
        "ReflexionEngine",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReflexionEngine.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/core/reflexion.py",
      "layer": "service",
      "summary": "ReflexionEngine.execute(messages, tools, model, agent_name, task_type, system_prompt, trace_recorder, memory_retriever, task_id, compressor, retrieval_config, cancellation_token, timeout_seconds, evaluate_model, reflect_model) 异步方法",
      "tags": [
        "ReflexionEngine",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReflexionEngine._execute_loop",
      "type": "function",
      "name": "_execute_loop",
      "filePath": "src/agentkit/core/reflexion.py",
      "layer": "service",
      "summary": "ReflexionEngine._execute_loop(messages, tools, model, agent_name, task_type, system_prompt, trace_recorder, memory_retriever, task_id, compressor, retrieval_config, cancellation_token, evaluate_model, reflect_model) 异步方法",
      "tags": [
        "ReflexionEngine",
        "_execute_loop"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReflexionEngine.execute_stream",
      "type": "function",
      "name": "execute_stream",
      "filePath": "src/agentkit/core/reflexion.py",
      "layer": "service",
      "summary": "ReflexionEngine.execute_stream(messages, tools, model, agent_name, task_type, system_prompt, trace_recorder, memory_retriever, task_id, compressor, retrieval_config, cancellation_token, timeout_seconds, evaluate_model, reflect_model) 异步方法",
      "tags": [
        "ReflexionEngine",
        "execute_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReflexionEngine._evaluate",
      "type": "function",
      "name": "_evaluate",
      "filePath": "src/agentkit/core/reflexion.py",
      "layer": "service",
      "summary": "ReflexionEngine._evaluate(react_result, messages, evaluate_model, agent_name, task_type) 异步方法",
      "tags": [
        "ReflexionEngine",
        "_evaluate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReflexionEngine._parse_evaluation_score",
      "type": "function",
      "name": "_parse_evaluation_score",
      "filePath": "src/agentkit/core/reflexion.py",
      "layer": "service",
      "summary": "ReflexionEngine._parse_evaluation_score(content) 方法",
      "tags": [
        "ReflexionEngine",
        "_parse_evaluation_score"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReflexionEngine._reflect",
      "type": "function",
      "name": "_reflect",
      "filePath": "src/agentkit/core/reflexion.py",
      "layer": "service",
      "summary": "ReflexionEngine._reflect(react_result, score, messages, reflect_model, agent_name, task_type) 异步方法",
      "tags": [
        "ReflexionEngine",
        "_reflect"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReflexionEngine._build_reflection_prompt",
      "type": "function",
      "name": "_build_reflection_prompt",
      "filePath": "src/agentkit/core/reflexion.py",
      "layer": "service",
      "summary": "ReflexionEngine._build_reflection_prompt(original_prompt, reflection_text, attempt) 方法",
      "tags": [
        "ReflexionEngine",
        "_build_reflection_prompt"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentRegistry",
      "type": "class",
      "name": "AgentRegistry",
      "filePath": "src/agentkit/core/registry.py",
      "layer": "service",
      "summary": "Agent 注册中心，管理 Agent 的注册、发现、状态",
      "tags": [
        "AgentRegistry"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:AgentRegistry.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/registry.py",
      "layer": "service",
      "summary": "AgentRegistry.__init__(session_factory, agent_model, load_balancer) 方法",
      "tags": [
        "AgentRegistry",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentRegistry.register",
      "type": "function",
      "name": "register",
      "filePath": "src/agentkit/core/registry.py",
      "layer": "service",
      "summary": "AgentRegistry.register(capability, endpoint) 异步方法",
      "tags": [
        "AgentRegistry",
        "register"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentRegistry.unregister",
      "type": "function",
      "name": "unregister",
      "filePath": "src/agentkit/core/registry.py",
      "layer": "service",
      "summary": "AgentRegistry.unregister(agent_name) 异步方法",
      "tags": [
        "AgentRegistry",
        "unregister"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentRegistry.update_heartbeat",
      "type": "function",
      "name": "update_heartbeat",
      "filePath": "src/agentkit/core/registry.py",
      "layer": "service",
      "summary": "AgentRegistry.update_heartbeat(agent_name) 异步方法",
      "tags": [
        "AgentRegistry",
        "update_heartbeat"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentRegistry.get_agent",
      "type": "function",
      "name": "get_agent",
      "filePath": "src/agentkit/core/registry.py",
      "layer": "service",
      "summary": "AgentRegistry.get_agent(agent_name) 异步方法",
      "tags": [
        "AgentRegistry",
        "get_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentRegistry.list_agents",
      "type": "function",
      "name": "list_agents",
      "filePath": "src/agentkit/core/registry.py",
      "layer": "service",
      "summary": "AgentRegistry.list_agents(agent_type, status) 异步方法",
      "tags": [
        "AgentRegistry",
        "list_agents"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentRegistry.get_available_agent",
      "type": "function",
      "name": "get_available_agent",
      "filePath": "src/agentkit/core/registry.py",
      "layer": "service",
      "summary": "AgentRegistry.get_available_agent(task_type) 异步方法",
      "tags": [
        "AgentRegistry",
        "get_available_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentRegistry.check_health",
      "type": "function",
      "name": "check_health",
      "filePath": "src/agentkit/core/registry.py",
      "layer": "service",
      "summary": "AgentRegistry.check_health() 异步方法",
      "tags": [
        "AgentRegistry",
        "check_health"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentRegistry._agent_to_dict",
      "type": "function",
      "name": "_agent_to_dict",
      "filePath": "src/agentkit/core/registry.py",
      "layer": "service",
      "summary": "AgentRegistry._agent_to_dict(agent) 方法",
      "tags": [
        "AgentRegistry",
        "_agent_to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:_FallbackFailedError",
      "type": "class",
      "name": "_FallbackFailedError",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "Internal signal: a fallback strategy failed, try the next one.",
      "tags": [
        "_FallbackFailedError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_FallbackFailedError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "_FallbackFailedError.__init__(strategy) 方法",
      "tags": [
        "_FallbackFailedError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ReWOOPlanStep",
      "type": "class",
      "name": "ReWOOPlanStep",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOO 计划中的单步",
      "tags": [
        "ReWOOPlanStep"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ReWOOPlan",
      "type": "class",
      "name": "ReWOOPlan",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOO 执行计划",
      "tags": [
        "ReWOOPlan"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ReWOOStep",
      "type": "class",
      "name": "ReWOOStep",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOO 执行步骤，扩展 ReActStep 增加 plan_step_id",
      "tags": [
        "ReWOOStep"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ReWOOEngine",
      "type": "class",
      "name": "ReWOOEngine",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOO (Reasoning Without Observation Others) 执行引擎",
      "tags": [
        "ReWOOEngine"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:ReWOOEngine.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine.__init__(llm_gateway, max_plan_steps, default_timeout, fallback_strategies) 方法",
      "tags": [
        "ReWOOEngine",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine.execute(messages, tools, model, agent_name, task_type, system_prompt, trace_recorder, memory_retriever, task_id, compressor, retrieval_config, cancellation_token, timeout_seconds, confirmation_handler) 异步方法",
      "tags": [
        "ReWOOEngine",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._execute_rewoo",
      "type": "function",
      "name": "_execute_rewoo",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._execute_rewoo(messages, tools, model, agent_name, task_type, system_prompt, trace_recorder, memory_retriever, task_id, compressor, retrieval_config, cancellation_token, confirmation_handler) 异步方法",
      "tags": [
        "ReWOOEngine",
        "_execute_rewoo"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine.execute_stream",
      "type": "function",
      "name": "execute_stream",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine.execute_stream(messages, tools, model, agent_name, task_type, system_prompt, trace_recorder, memory_retriever, task_id, compressor, retrieval_config, cancellation_token, timeout_seconds, confirmation_handler) 异步方法",
      "tags": [
        "ReWOOEngine",
        "execute_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._try_fallback_strategies_stream",
      "type": "function",
      "name": "_try_fallback_strategies_stream",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._try_fallback_strategies_stream(strategies, messages, tools, model, agent_name, task_type, system_prompt, effective_system_prompt, trace_recorder, memory_retriever, task_id, compressor, retrieval_config, cancellation_token, total_tokens, confirmation_handler) 异步方法",
      "tags": [
        "ReWOOEngine",
        "_try_fallback_strategies_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._fallback_simplified_rewoo_stream",
      "type": "function",
      "name": "_fallback_simplified_rewoo_stream",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._fallback_simplified_rewoo_stream(messages, tools, model, agent_name, task_type, effective_system_prompt, compressor, cancellation_token) 异步方法",
      "tags": [
        "ReWOOEngine",
        "_fallback_simplified_rewoo_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._fallback_react_stream",
      "type": "function",
      "name": "_fallback_react_stream",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._fallback_react_stream(messages, tools, model, agent_name, task_type, system_prompt, trace_recorder, memory_retriever, task_id, compressor, retrieval_config, cancellation_token, confirmation_handler) 异步方法",
      "tags": [
        "ReWOOEngine",
        "_fallback_react_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._fallback_direct_stream",
      "type": "function",
      "name": "_fallback_direct_stream",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._fallback_direct_stream(messages, model, agent_name, task_type, effective_system_prompt, compressor, total_tokens) 异步方法",
      "tags": [
        "ReWOOEngine",
        "_fallback_direct_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._fallback_plan_exec_stream",
      "type": "function",
      "name": "_fallback_plan_exec_stream",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._fallback_plan_exec_stream(messages, tools, model, agent_name, task_type, effective_system_prompt, compressor, cancellation_token) 异步方法",
      "tags": [
        "ReWOOEngine",
        "_fallback_plan_exec_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._try_fallback_strategies",
      "type": "function",
      "name": "_try_fallback_strategies",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._try_fallback_strategies(strategies, messages, tools, model, agent_name, task_type, system_prompt, effective_system_prompt, trace_recorder, memory_retriever, task_id, compressor, retrieval_config, cancellation_token, trajectory, total_tokens, confirmation_handler) 异步方法",
      "tags": [
        "ReWOOEngine",
        "_try_fallback_strategies"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._fallback_simplified_rewoo",
      "type": "function",
      "name": "_fallback_simplified_rewoo",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._fallback_simplified_rewoo(messages, tools, model, agent_name, task_type, effective_system_prompt, compressor, cancellation_token) 异步方法",
      "tags": [
        "ReWOOEngine",
        "_fallback_simplified_rewoo"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._fallback_react",
      "type": "function",
      "name": "_fallback_react",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._fallback_react(messages, tools, model, agent_name, task_type, system_prompt, trace_recorder, memory_retriever, task_id, compressor, retrieval_config, cancellation_token, confirmation_handler) 异步方法",
      "tags": [
        "ReWOOEngine",
        "_fallback_react"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._fallback_direct",
      "type": "function",
      "name": "_fallback_direct",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._fallback_direct(messages, model, agent_name, task_type, effective_system_prompt, compressor, cancellation_token, trajectory, total_tokens, trace_recorder) 异步方法",
      "tags": [
        "ReWOOEngine",
        "_fallback_direct"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._fallback_plan_exec",
      "type": "function",
      "name": "_fallback_plan_exec",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._fallback_plan_exec(messages, tools, model, agent_name, task_type, effective_system_prompt, compressor, cancellation_token) 异步方法",
      "tags": [
        "ReWOOEngine",
        "_fallback_plan_exec"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._plan_phase",
      "type": "function",
      "name": "_plan_phase",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._plan_phase(messages, tools, tool_schemas, model, agent_name, task_type, system_prompt, compressor, cancellation_token, max_steps) 异步方法",
      "tags": [
        "ReWOOEngine",
        "_plan_phase"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._synthesis_phase",
      "type": "function",
      "name": "_synthesis_phase",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._synthesis_phase(messages, tool_results, model, agent_name, task_type, system_prompt, compressor, cancellation_token) 异步方法",
      "tags": [
        "ReWOOEngine",
        "_synthesis_phase"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._build_tool_schemas",
      "type": "function",
      "name": "_build_tool_schemas",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._build_tool_schemas(tools) 方法",
      "tags": [
        "ReWOOEngine",
        "_build_tool_schemas"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._build_tool_descriptions",
      "type": "function",
      "name": "_build_tool_descriptions",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._build_tool_descriptions(tools) 方法",
      "tags": [
        "ReWOOEngine",
        "_build_tool_descriptions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._parse_plan",
      "type": "function",
      "name": "_parse_plan",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._parse_plan(content) 方法",
      "tags": [
        "ReWOOEngine",
        "_parse_plan"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._find_tool",
      "type": "function",
      "name": "_find_tool",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._find_tool(name, tools) 方法",
      "tags": [
        "ReWOOEngine",
        "_find_tool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ReWOOEngine._execute_tool",
      "type": "function",
      "name": "_execute_tool",
      "filePath": "src/agentkit/core/rewoo.py",
      "layer": "service",
      "summary": "ReWOOEngine._execute_tool(tool_name, arguments, tools) 异步方法",
      "tags": [
        "ReWOOEngine",
        "_execute_tool"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SharedWorkspace",
      "type": "class",
      "name": "SharedWorkspace",
      "filePath": "src/agentkit/core/shared_workspace.py",
      "layer": "service",
      "summary": "Agent 间共享工作空间",
      "tags": [
        "SharedWorkspace"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:SharedWorkspace.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/shared_workspace.py",
      "layer": "service",
      "summary": "SharedWorkspace.__init__(redis_client, prefix) 方法",
      "tags": [
        "SharedWorkspace",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SharedWorkspace._make_key",
      "type": "function",
      "name": "_make_key",
      "filePath": "src/agentkit/core/shared_workspace.py",
      "layer": "service",
      "summary": "SharedWorkspace._make_key(key) 方法",
      "tags": [
        "SharedWorkspace",
        "_make_key"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SharedWorkspace.write",
      "type": "function",
      "name": "write",
      "filePath": "src/agentkit/core/shared_workspace.py",
      "layer": "service",
      "summary": "SharedWorkspace.write(key, value, agent_id, ttl) 异步方法",
      "tags": [
        "SharedWorkspace",
        "write"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SharedWorkspace.read",
      "type": "function",
      "name": "read",
      "filePath": "src/agentkit/core/shared_workspace.py",
      "layer": "service",
      "summary": "SharedWorkspace.read(key) 异步方法",
      "tags": [
        "SharedWorkspace",
        "read"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SharedWorkspace.delete",
      "type": "function",
      "name": "delete",
      "filePath": "src/agentkit/core/shared_workspace.py",
      "layer": "service",
      "summary": "SharedWorkspace.delete(key) 异步方法",
      "tags": [
        "SharedWorkspace",
        "delete"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SharedWorkspace.lock",
      "type": "function",
      "name": "lock",
      "filePath": "src/agentkit/core/shared_workspace.py",
      "layer": "service",
      "summary": "SharedWorkspace.lock(key, agent_id, timeout) 异步方法",
      "tags": [
        "SharedWorkspace",
        "lock"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SharedWorkspace.unlock",
      "type": "function",
      "name": "unlock",
      "filePath": "src/agentkit/core/shared_workspace.py",
      "layer": "service",
      "summary": "SharedWorkspace.unlock(key, agent_id) 异步方法",
      "tags": [
        "SharedWorkspace",
        "unlock"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SharedWorkspace._get_version",
      "type": "function",
      "name": "_get_version",
      "filePath": "src/agentkit/core/shared_workspace.py",
      "layer": "service",
      "summary": "SharedWorkspace._get_version(key) 异步方法",
      "tags": [
        "SharedWorkspace",
        "_get_version"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SharedWorkspace.list_keys",
      "type": "function",
      "name": "list_keys",
      "filePath": "src/agentkit/core/shared_workspace.py",
      "layer": "service",
      "summary": "SharedWorkspace.list_keys() 异步方法",
      "tags": [
        "SharedWorkspace",
        "list_keys"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:StandaloneRunner",
      "type": "class",
      "name": "StandaloneRunner",
      "filePath": "src/agentkit/core/standalone.py",
      "layer": "service",
      "summary": "自动发现并启动配置驱动的 Agent",
      "tags": [
        "StandaloneRunner"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:StandaloneRunner.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/standalone.py",
      "layer": "service",
      "summary": "StandaloneRunner.__init__(config_dir, tool_registry, llm_client, custom_handlers) 方法",
      "tags": [
        "StandaloneRunner",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StandaloneRunner.agents",
      "type": "function",
      "name": "agents",
      "filePath": "src/agentkit/core/standalone.py",
      "layer": "service",
      "summary": "StandaloneRunner.agents() 方法",
      "tags": [
        "StandaloneRunner",
        "agents"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StandaloneRunner.add_tool",
      "type": "function",
      "name": "add_tool",
      "filePath": "src/agentkit/core/standalone.py",
      "layer": "service",
      "summary": "StandaloneRunner.add_tool(tool) 方法",
      "tags": [
        "StandaloneRunner",
        "add_tool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StandaloneRunner.add_custom_handler",
      "type": "function",
      "name": "add_custom_handler",
      "filePath": "src/agentkit/core/standalone.py",
      "layer": "service",
      "summary": "StandaloneRunner.add_custom_handler(name, handler) 方法",
      "tags": [
        "StandaloneRunner",
        "add_custom_handler"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StandaloneRunner.discover_configs",
      "type": "function",
      "name": "discover_configs",
      "filePath": "src/agentkit/core/standalone.py",
      "layer": "service",
      "summary": "StandaloneRunner.discover_configs() 方法",
      "tags": [
        "StandaloneRunner",
        "discover_configs"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StandaloneRunner.build_agents",
      "type": "function",
      "name": "build_agents",
      "filePath": "src/agentkit/core/standalone.py",
      "layer": "service",
      "summary": "StandaloneRunner.build_agents() 方法",
      "tags": [
        "StandaloneRunner",
        "build_agents"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StandaloneRunner.start_all",
      "type": "function",
      "name": "start_all",
      "filePath": "src/agentkit/core/standalone.py",
      "layer": "service",
      "summary": "StandaloneRunner.start_all(redis_url) 异步方法",
      "tags": [
        "StandaloneRunner",
        "start_all"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StandaloneRunner.stop_all",
      "type": "function",
      "name": "stop_all",
      "filePath": "src/agentkit/core/standalone.py",
      "layer": "service",
      "summary": "StandaloneRunner.stop_all() 异步方法",
      "tags": [
        "StandaloneRunner",
        "stop_all"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StandaloneRunner.execute_task",
      "type": "function",
      "name": "execute_task",
      "filePath": "src/agentkit/core/standalone.py",
      "layer": "service",
      "summary": "StandaloneRunner.execute_task(agent_name, task) 异步方法",
      "tags": [
        "StandaloneRunner",
        "execute_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TraceStep",
      "type": "class",
      "name": "TraceStep",
      "filePath": "src/agentkit/core/trace.py",
      "layer": "service",
      "summary": "单步执行轨迹",
      "tags": [
        "TraceStep"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TraceStep.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/core/trace.py",
      "layer": "service",
      "summary": "TraceStep.to_dict() 方法",
      "tags": [
        "TraceStep",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ExecutionTrace",
      "type": "class",
      "name": "ExecutionTrace",
      "filePath": "src/agentkit/core/trace.py",
      "layer": "service",
      "summary": "完整执行轨迹",
      "tags": [
        "ExecutionTrace"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ExecutionTrace.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/core/trace.py",
      "layer": "service",
      "summary": "ExecutionTrace.to_dict() 方法",
      "tags": [
        "ExecutionTrace",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TraceRecorder",
      "type": "class",
      "name": "TraceRecorder",
      "filePath": "src/agentkit/core/trace.py",
      "layer": "service",
      "summary": "执行轨迹记录器",
      "tags": [
        "TraceRecorder"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:TraceRecorder.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/core/trace.py",
      "layer": "service",
      "summary": "TraceRecorder.__init__(task_id, agent_name, skill_name, on_trace_complete) 方法",
      "tags": [
        "TraceRecorder",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TraceRecorder.start_trace",
      "type": "function",
      "name": "start_trace",
      "filePath": "src/agentkit/core/trace.py",
      "layer": "service",
      "summary": "TraceRecorder.start_trace(task_id, agent_name, skill_name) 方法",
      "tags": [
        "TraceRecorder",
        "start_trace"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TraceRecorder.record_step",
      "type": "function",
      "name": "record_step",
      "filePath": "src/agentkit/core/trace.py",
      "layer": "service",
      "summary": "TraceRecorder.record_step(step, action, tool_name, input_data, output_data, duration_ms, tokens_used, error) 方法",
      "tags": [
        "TraceRecorder",
        "record_step"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TraceRecorder.end_trace",
      "type": "function",
      "name": "end_trace",
      "filePath": "src/agentkit/core/trace.py",
      "layer": "service",
      "summary": "TraceRecorder.end_trace(outcome, quality_score) 方法",
      "tags": [
        "TraceRecorder",
        "end_trace"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TraceRecorder.get_trace",
      "type": "function",
      "name": "get_trace",
      "filePath": "src/agentkit/core/trace.py",
      "layer": "service",
      "summary": "TraceRecorder.get_trace() 方法",
      "tags": [
        "TraceRecorder",
        "get_trace"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TraceRecorder.start_step_timer",
      "type": "function",
      "name": "start_step_timer",
      "filePath": "src/agentkit/core/trace.py",
      "layer": "service",
      "summary": "TraceRecorder.start_step_timer() 方法",
      "tags": [
        "TraceRecorder",
        "start_step_timer"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TraceRecorder.elapsed_ms",
      "type": "function",
      "name": "elapsed_ms",
      "filePath": "src/agentkit/core/trace.py",
      "layer": "service",
      "summary": "TraceRecorder.elapsed_ms() 方法",
      "tags": [
        "TraceRecorder",
        "elapsed_ms"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EvalSample",
      "type": "class",
      "name": "EvalSample",
      "filePath": "src/agentkit/evaluation/ragas_evaluator.py",
      "layer": "utility",
      "summary": "评估样本",
      "tags": [
        "EvalSample"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EvalMetrics",
      "type": "class",
      "name": "EvalMetrics",
      "filePath": "src/agentkit/evaluation/ragas_evaluator.py",
      "layer": "utility",
      "summary": "评估指标",
      "tags": [
        "EvalMetrics"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvalMetrics.average",
      "type": "function",
      "name": "average",
      "filePath": "src/agentkit/evaluation/ragas_evaluator.py",
      "layer": "utility",
      "summary": "EvalMetrics.average() 方法",
      "tags": [
        "EvalMetrics",
        "average"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvalMetrics.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/evaluation/ragas_evaluator.py",
      "layer": "utility",
      "summary": "EvalMetrics.to_dict() 方法",
      "tags": [
        "EvalMetrics",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EvalResult",
      "type": "class",
      "name": "EvalResult",
      "filePath": "src/agentkit/evaluation/ragas_evaluator.py",
      "layer": "utility",
      "summary": "评估结果",
      "tags": [
        "EvalResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EvalDatasetBuilder",
      "type": "class",
      "name": "EvalDatasetBuilder",
      "filePath": "src/agentkit/evaluation/ragas_evaluator.py",
      "layer": "utility",
      "summary": "评估数据集构建器",
      "tags": [
        "EvalDatasetBuilder"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvalDatasetBuilder.from_traces",
      "type": "function",
      "name": "from_traces",
      "filePath": "src/agentkit/evaluation/ragas_evaluator.py",
      "layer": "utility",
      "summary": "EvalDatasetBuilder.from_traces(traces) 方法",
      "tags": [
        "EvalDatasetBuilder",
        "from_traces"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvalDatasetBuilder.from_dict_list",
      "type": "function",
      "name": "from_dict_list",
      "filePath": "src/agentkit/evaluation/ragas_evaluator.py",
      "layer": "utility",
      "summary": "EvalDatasetBuilder.from_dict_list(data) 方法",
      "tags": [
        "EvalDatasetBuilder",
        "from_dict_list"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RagasEvaluator",
      "type": "class",
      "name": "RagasEvaluator",
      "filePath": "src/agentkit/evaluation/ragas_evaluator.py",
      "layer": "utility",
      "summary": "Ragas 评估器",
      "tags": [
        "RagasEvaluator"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:RagasEvaluator.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evaluation/ragas_evaluator.py",
      "layer": "utility",
      "summary": "RagasEvaluator.__init__(llm_gateway, use_ragas_lib) 方法",
      "tags": [
        "RagasEvaluator",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RagasEvaluator.evaluate",
      "type": "function",
      "name": "evaluate",
      "filePath": "src/agentkit/evaluation/ragas_evaluator.py",
      "layer": "utility",
      "summary": "RagasEvaluator.evaluate(samples, metrics) 异步方法",
      "tags": [
        "RagasEvaluator",
        "evaluate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RagasEvaluator._evaluate_with_ragas",
      "type": "function",
      "name": "_evaluate_with_ragas",
      "filePath": "src/agentkit/evaluation/ragas_evaluator.py",
      "layer": "utility",
      "summary": "RagasEvaluator._evaluate_with_ragas(samples, metrics) 异步方法",
      "tags": [
        "RagasEvaluator",
        "_evaluate_with_ragas"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RagasEvaluator._evaluate_builtin",
      "type": "function",
      "name": "_evaluate_builtin",
      "filePath": "src/agentkit/evaluation/ragas_evaluator.py",
      "layer": "utility",
      "summary": "RagasEvaluator._evaluate_builtin(samples, metrics) 异步方法",
      "tags": [
        "RagasEvaluator",
        "_evaluate_builtin"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ABTestConfig",
      "type": "class",
      "name": "ABTestConfig",
      "filePath": "src/agentkit/evolution/ab_tester.py",
      "layer": "utility",
      "summary": "A/B 测试配置",
      "tags": [
        "ABTestConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ABTestResult",
      "type": "class",
      "name": "ABTestResult",
      "filePath": "src/agentkit/evolution/ab_tester.py",
      "layer": "utility",
      "summary": "A/B 测试结果",
      "tags": [
        "ABTestResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ABTester",
      "type": "class",
      "name": "ABTester",
      "filePath": "src/agentkit/evolution/ab_tester.py",
      "layer": "utility",
      "summary": "A/B 测试框架",
      "tags": [
        "ABTester"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:ABTester.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/ab_tester.py",
      "layer": "utility",
      "summary": "ABTester.__init__(evolution_store, min_samples) 方法",
      "tags": [
        "ABTester",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ABTester.create_test",
      "type": "function",
      "name": "create_test",
      "filePath": "src/agentkit/evolution/ab_tester.py",
      "layer": "utility",
      "summary": "ABTester.create_test(config) 方法",
      "tags": [
        "ABTester",
        "create_test"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ABTester.assign_group",
      "type": "function",
      "name": "assign_group",
      "filePath": "src/agentkit/evolution/ab_tester.py",
      "layer": "utility",
      "summary": "ABTester.assign_group(test_id, task_id) 方法",
      "tags": [
        "ABTester",
        "assign_group"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ABTester.record_result",
      "type": "function",
      "name": "record_result",
      "filePath": "src/agentkit/evolution/ab_tester.py",
      "layer": "utility",
      "summary": "ABTester.record_result(test_id, group, metric) 方法",
      "tags": [
        "ABTester",
        "record_result"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ABTester.persist_results",
      "type": "function",
      "name": "persist_results",
      "filePath": "src/agentkit/evolution/ab_tester.py",
      "layer": "utility",
      "summary": "ABTester.persist_results(test_id) 异步方法",
      "tags": [
        "ABTester",
        "persist_results"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ABTester.evaluate",
      "type": "function",
      "name": "evaluate",
      "filePath": "src/agentkit/evolution/ab_tester.py",
      "layer": "utility",
      "summary": "ABTester.evaluate(test_id) 异步方法",
      "tags": [
        "ABTester",
        "evaluate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ABTester._normal_cdf",
      "type": "function",
      "name": "_normal_cdf",
      "filePath": "src/agentkit/evolution/ab_tester.py",
      "layer": "utility",
      "summary": "ABTester._normal_cdf(x) 方法",
      "tags": [
        "ABTester",
        "_normal_cdf"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EvolutionStoreProtocol",
      "type": "class",
      "name": "EvolutionStoreProtocol",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "进化存储统一接口 Protocol",
      "tags": [
        "EvolutionStoreProtocol"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:EvolutionStoreProtocol.record",
      "type": "function",
      "name": "record",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStoreProtocol.record(event) 异步方法",
      "tags": [
        "EvolutionStoreProtocol",
        "record"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionStoreProtocol.rollback",
      "type": "function",
      "name": "rollback",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStoreProtocol.rollback(event_id) 异步方法",
      "tags": [
        "EvolutionStoreProtocol",
        "rollback"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionStoreProtocol.list_events",
      "type": "function",
      "name": "list_events",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStoreProtocol.list_events(agent_name, change_type, status) 异步方法",
      "tags": [
        "EvolutionStoreProtocol",
        "list_events"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionStoreProtocol.record_skill_version",
      "type": "function",
      "name": "record_skill_version",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStoreProtocol.record_skill_version(skill_name, version, content, parent_version) 异步方法",
      "tags": [
        "EvolutionStoreProtocol",
        "record_skill_version"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionStoreProtocol.list_skill_versions",
      "type": "function",
      "name": "list_skill_versions",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStoreProtocol.list_skill_versions(skill_name) 异步方法",
      "tags": [
        "EvolutionStoreProtocol",
        "list_skill_versions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionStoreProtocol.record_ab_test_result",
      "type": "function",
      "name": "record_ab_test_result",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStoreProtocol.record_ab_test_result(test_id, variant, score, sample_count) 异步方法",
      "tags": [
        "EvolutionStoreProtocol",
        "record_ab_test_result"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionStoreProtocol.get_ab_test_results",
      "type": "function",
      "name": "get_ab_test_results",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStoreProtocol.get_ab_test_results(test_id) 异步方法",
      "tags": [
        "EvolutionStoreProtocol",
        "get_ab_test_results"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EvolutionStore",
      "type": "class",
      "name": "EvolutionStore",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "进化日志存储",
      "tags": [
        "EvolutionStore"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:EvolutionStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStore.__init__(session_factory, evolution_model) 方法",
      "tags": [
        "EvolutionStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionStore.record",
      "type": "function",
      "name": "record",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStore.record(event) 异步方法",
      "tags": [
        "EvolutionStore",
        "record"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionStore.rollback",
      "type": "function",
      "name": "rollback",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStore.rollback(event_id) 异步方法",
      "tags": [
        "EvolutionStore",
        "rollback"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionStore.list_events",
      "type": "function",
      "name": "list_events",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStore.list_events(agent_name, change_type, status) 异步方法",
      "tags": [
        "EvolutionStore",
        "list_events"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionStore.record_skill_version",
      "type": "function",
      "name": "record_skill_version",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStore.record_skill_version(skill_name, version, content, parent_version) 异步方法",
      "tags": [
        "EvolutionStore",
        "record_skill_version"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionStore.list_skill_versions",
      "type": "function",
      "name": "list_skill_versions",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStore.list_skill_versions(skill_name) 异步方法",
      "tags": [
        "EvolutionStore",
        "list_skill_versions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionStore.record_ab_test_result",
      "type": "function",
      "name": "record_ab_test_result",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStore.record_ab_test_result(test_id, variant, score, sample_count) 异步方法",
      "tags": [
        "EvolutionStore",
        "record_ab_test_result"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionStore.get_ab_test_results",
      "type": "function",
      "name": "get_ab_test_results",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "EvolutionStore.get_ab_test_results(test_id) 异步方法",
      "tags": [
        "EvolutionStore",
        "get_ab_test_results"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PersistentEvolutionStore",
      "type": "class",
      "name": "PersistentEvolutionStore",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "SQLite 持久化进化存储",
      "tags": [
        "PersistentEvolutionStore"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:PersistentEvolutionStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore.__init__(db_path) 方法",
      "tags": [
        "PersistentEvolutionStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore._run_sync",
      "type": "function",
      "name": "_run_sync",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore._run_sync(func) 方法",
      "tags": [
        "PersistentEvolutionStore",
        "_run_sync"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore.close",
      "type": "function",
      "name": "close",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore.close() 异步方法",
      "tags": [
        "PersistentEvolutionStore",
        "close"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore.__aenter__",
      "type": "function",
      "name": "__aenter__",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore.__aenter__() 异步方法",
      "tags": [
        "PersistentEvolutionStore",
        "__aenter__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore.__aexit__",
      "type": "function",
      "name": "__aexit__",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore.__aexit__(exc_type, exc_val, exc_tb) 异步方法",
      "tags": [
        "PersistentEvolutionStore",
        "__aexit__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore._retry_locked",
      "type": "function",
      "name": "_retry_locked",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore._retry_locked(func) 方法",
      "tags": [
        "PersistentEvolutionStore",
        "_retry_locked"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore._record_sync",
      "type": "function",
      "name": "_record_sync",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore._record_sync(event) 方法",
      "tags": [
        "PersistentEvolutionStore",
        "_record_sync"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore.record",
      "type": "function",
      "name": "record",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore.record(event) 异步方法",
      "tags": [
        "PersistentEvolutionStore",
        "record"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore._rollback_sync",
      "type": "function",
      "name": "_rollback_sync",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore._rollback_sync(event_id) 方法",
      "tags": [
        "PersistentEvolutionStore",
        "_rollback_sync"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore.rollback",
      "type": "function",
      "name": "rollback",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore.rollback(event_id) 异步方法",
      "tags": [
        "PersistentEvolutionStore",
        "rollback"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore._list_events_sync",
      "type": "function",
      "name": "_list_events_sync",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore._list_events_sync(agent_name, change_type, status) 方法",
      "tags": [
        "PersistentEvolutionStore",
        "_list_events_sync"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore.list_events",
      "type": "function",
      "name": "list_events",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore.list_events(agent_name, change_type, status) 异步方法",
      "tags": [
        "PersistentEvolutionStore",
        "list_events"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore._record_skill_version_sync",
      "type": "function",
      "name": "_record_skill_version_sync",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore._record_skill_version_sync(skill_name, version, content, parent_version) 方法",
      "tags": [
        "PersistentEvolutionStore",
        "_record_skill_version_sync"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore.record_skill_version",
      "type": "function",
      "name": "record_skill_version",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore.record_skill_version(skill_name, version, content, parent_version) 异步方法",
      "tags": [
        "PersistentEvolutionStore",
        "record_skill_version"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore._list_skill_versions_sync",
      "type": "function",
      "name": "_list_skill_versions_sync",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore._list_skill_versions_sync(skill_name) 方法",
      "tags": [
        "PersistentEvolutionStore",
        "_list_skill_versions_sync"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore.list_skill_versions",
      "type": "function",
      "name": "list_skill_versions",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore.list_skill_versions(skill_name) 异步方法",
      "tags": [
        "PersistentEvolutionStore",
        "list_skill_versions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore._record_ab_test_result_sync",
      "type": "function",
      "name": "_record_ab_test_result_sync",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore._record_ab_test_result_sync(test_id, variant, score, sample_count) 方法",
      "tags": [
        "PersistentEvolutionStore",
        "_record_ab_test_result_sync"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore.record_ab_test_result",
      "type": "function",
      "name": "record_ab_test_result",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore.record_ab_test_result(test_id, variant, score, sample_count) 异步方法",
      "tags": [
        "PersistentEvolutionStore",
        "record_ab_test_result"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore._get_ab_test_results_sync",
      "type": "function",
      "name": "_get_ab_test_results_sync",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore._get_ab_test_results_sync(test_id) 方法",
      "tags": [
        "PersistentEvolutionStore",
        "_get_ab_test_results_sync"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PersistentEvolutionStore.get_ab_test_results",
      "type": "function",
      "name": "get_ab_test_results",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "PersistentEvolutionStore.get_ab_test_results(test_id) 异步方法",
      "tags": [
        "PersistentEvolutionStore",
        "get_ab_test_results"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:InMemoryEvolutionStore",
      "type": "class",
      "name": "InMemoryEvolutionStore",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "基于内存字典的进化存储（用于测试和轻量场景）",
      "tags": [
        "InMemoryEvolutionStore"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:InMemoryEvolutionStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "InMemoryEvolutionStore.__init__() 方法",
      "tags": [
        "InMemoryEvolutionStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryEvolutionStore.record",
      "type": "function",
      "name": "record",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "InMemoryEvolutionStore.record(event) 异步方法",
      "tags": [
        "InMemoryEvolutionStore",
        "record"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryEvolutionStore.rollback",
      "type": "function",
      "name": "rollback",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "InMemoryEvolutionStore.rollback(event_id) 异步方法",
      "tags": [
        "InMemoryEvolutionStore",
        "rollback"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryEvolutionStore.list_events",
      "type": "function",
      "name": "list_events",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "InMemoryEvolutionStore.list_events(agent_name, change_type, status) 异步方法",
      "tags": [
        "InMemoryEvolutionStore",
        "list_events"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryEvolutionStore.record_skill_version",
      "type": "function",
      "name": "record_skill_version",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "InMemoryEvolutionStore.record_skill_version(skill_name, version, content, parent_version) 异步方法",
      "tags": [
        "InMemoryEvolutionStore",
        "record_skill_version"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryEvolutionStore.list_skill_versions",
      "type": "function",
      "name": "list_skill_versions",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "InMemoryEvolutionStore.list_skill_versions(skill_name) 异步方法",
      "tags": [
        "InMemoryEvolutionStore",
        "list_skill_versions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryEvolutionStore.record_ab_test_result",
      "type": "function",
      "name": "record_ab_test_result",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "InMemoryEvolutionStore.record_ab_test_result(test_id, variant, score, sample_count) 异步方法",
      "tags": [
        "InMemoryEvolutionStore",
        "record_ab_test_result"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryEvolutionStore.get_ab_test_results",
      "type": "function",
      "name": "get_ab_test_results",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "InMemoryEvolutionStore.get_ab_test_results(test_id) 异步方法",
      "tags": [
        "InMemoryEvolutionStore",
        "get_ab_test_results"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TaskExperience",
      "type": "class",
      "name": "TaskExperience",
      "filePath": "src/agentkit/evolution/experience_schema.py",
      "layer": "utility",
      "summary": "任务执行经验",
      "tags": [
        "TaskExperience"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskExperience.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/evolution/experience_schema.py",
      "layer": "utility",
      "summary": "TaskExperience.to_dict() 方法",
      "tags": [
        "TaskExperience",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskExperience.text_for_embedding",
      "type": "function",
      "name": "text_for_embedding",
      "filePath": "src/agentkit/evolution/experience_schema.py",
      "layer": "utility",
      "summary": "TaskExperience.text_for_embedding() 方法",
      "tags": [
        "TaskExperience",
        "text_for_embedding"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EvolutionMetrics",
      "type": "class",
      "name": "EvolutionMetrics",
      "filePath": "src/agentkit/evolution/experience_schema.py",
      "layer": "utility",
      "summary": "进化指标趋势",
      "tags": [
        "EvolutionMetrics"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionMetrics.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/evolution/experience_schema.py",
      "layer": "utility",
      "summary": "EvolutionMetrics.to_dict() 方法",
      "tags": [
        "EvolutionMetrics",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ExperienceStore",
      "type": "class",
      "name": "ExperienceStore",
      "filePath": "src/agentkit/evolution/experience_store.py",
      "layer": "utility",
      "summary": "任务经验存储 - PostgreSQL + pgvector 混合存储",
      "tags": [
        "ExperienceStore"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:ExperienceStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/experience_store.py",
      "layer": "utility",
      "summary": "ExperienceStore.__init__(session_factory, experience_model, embedder, decay_rate, alpha, retrieve_limit, pgvector_enabled, table_name) 方法",
      "tags": [
        "ExperienceStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ExperienceStore.record_experience",
      "type": "function",
      "name": "record_experience",
      "filePath": "src/agentkit/evolution/experience_store.py",
      "layer": "utility",
      "summary": "ExperienceStore.record_experience(experience) 异步方法",
      "tags": [
        "ExperienceStore",
        "record_experience"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ExperienceStore.search",
      "type": "function",
      "name": "search",
      "filePath": "src/agentkit/evolution/experience_store.py",
      "layer": "utility",
      "summary": "ExperienceStore.search(query, top_k, task_type, search_multiplier) 异步方法",
      "tags": [
        "ExperienceStore",
        "search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ExperienceStore._search_pgvector",
      "type": "function",
      "name": "_search_pgvector",
      "filePath": "src/agentkit/evolution/experience_store.py",
      "layer": "utility",
      "summary": "ExperienceStore._search_pgvector(db, query, top_k, task_type, search_multiplier) 异步方法",
      "tags": [
        "ExperienceStore",
        "_search_pgvector"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ExperienceStore._search_client_side",
      "type": "function",
      "name": "_search_client_side",
      "filePath": "src/agentkit/evolution/experience_store.py",
      "layer": "utility",
      "summary": "ExperienceStore._search_client_side(db, query, top_k, task_type, search_multiplier) 异步方法",
      "tags": [
        "ExperienceStore",
        "_search_client_side"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ExperienceStore.get_metrics",
      "type": "function",
      "name": "get_metrics",
      "filePath": "src/agentkit/evolution/experience_store.py",
      "layer": "utility",
      "summary": "ExperienceStore.get_metrics(task_type, time_window) 异步方法",
      "tags": [
        "ExperienceStore",
        "get_metrics"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:InMemoryExperienceStore",
      "type": "class",
      "name": "InMemoryExperienceStore",
      "filePath": "src/agentkit/evolution/experience_store.py",
      "layer": "utility",
      "summary": "基于内存字典的任务经验存储（用于测试和轻量场景）",
      "tags": [
        "InMemoryExperienceStore"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:InMemoryExperienceStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/experience_store.py",
      "layer": "utility",
      "summary": "InMemoryExperienceStore.__init__(embedder, decay_rate, alpha) 方法",
      "tags": [
        "InMemoryExperienceStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryExperienceStore.record_experience",
      "type": "function",
      "name": "record_experience",
      "filePath": "src/agentkit/evolution/experience_store.py",
      "layer": "utility",
      "summary": "InMemoryExperienceStore.record_experience(experience) 异步方法",
      "tags": [
        "InMemoryExperienceStore",
        "record_experience"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryExperienceStore.search",
      "type": "function",
      "name": "search",
      "filePath": "src/agentkit/evolution/experience_store.py",
      "layer": "utility",
      "summary": "InMemoryExperienceStore.search(query, top_k, task_type, search_multiplier) 异步方法",
      "tags": [
        "InMemoryExperienceStore",
        "search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryExperienceStore.get_metrics",
      "type": "function",
      "name": "get_metrics",
      "filePath": "src/agentkit/evolution/experience_store.py",
      "layer": "utility",
      "summary": "InMemoryExperienceStore.get_metrics(task_type, time_window) 异步方法",
      "tags": [
        "InMemoryExperienceStore",
        "get_metrics"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:FitnessWeights",
      "type": "class",
      "name": "FitnessWeights",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "适应度权重配置",
      "tags": [
        "FitnessWeights"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FitnessWeights.__post_init__",
      "type": "function",
      "name": "__post_init__",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "FitnessWeights.__post_init__() 方法",
      "tags": [
        "FitnessWeights",
        "__post_init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MultiObjectiveFitness",
      "type": "class",
      "name": "MultiObjectiveFitness",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "多目标适应度评估器",
      "tags": [
        "MultiObjectiveFitness"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:MultiObjectiveFitness.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "MultiObjectiveFitness.__init__(weights, max_latency_ms, max_cost_tokens) 方法",
      "tags": [
        "MultiObjectiveFitness",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MultiObjectiveFitness.evaluate",
      "type": "function",
      "name": "evaluate",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "MultiObjectiveFitness.evaluate(accuracy, latency_ms, cost_tokens, custom) 方法",
      "tags": [
        "MultiObjectiveFitness",
        "evaluate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MultiObjectiveFitness.weighted_score",
      "type": "function",
      "name": "weighted_score",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "MultiObjectiveFitness.weighted_score(score) 方法",
      "tags": [
        "MultiObjectiveFitness",
        "weighted_score"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MultiObjectiveFitness.pareto_rank",
      "type": "function",
      "name": "pareto_rank",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "MultiObjectiveFitness.pareto_rank(scores) 方法",
      "tags": [
        "MultiObjectiveFitness",
        "pareto_rank"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MultiObjectiveFitness.crowding_distance",
      "type": "function",
      "name": "crowding_distance",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "MultiObjectiveFitness.crowding_distance(scores) 方法",
      "tags": [
        "MultiObjectiveFitness",
        "crowding_distance"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ExtendedStrategyConfig",
      "type": "class",
      "name": "ExtendedStrategyConfig",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "扩展的策略配置",
      "tags": [
        "ExtendedStrategyConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ExtendedStrategyTuner",
      "type": "class",
      "name": "ExtendedStrategyTuner",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "多维策略调优器",
      "tags": [
        "ExtendedStrategyTuner"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:ExtendedStrategyTuner.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "ExtendedStrategyTuner.__init__(param_ranges) 方法",
      "tags": [
        "ExtendedStrategyTuner",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ExtendedStrategyTuner.record",
      "type": "function",
      "name": "record",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "ExtendedStrategyTuner.record(config, metric) 方法",
      "tags": [
        "ExtendedStrategyTuner",
        "record"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ExtendedStrategyTuner.suggest",
      "type": "function",
      "name": "suggest",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "ExtendedStrategyTuner.suggest(current) 异步方法",
      "tags": [
        "ExtendedStrategyTuner",
        "suggest"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ExtendedStrategyTuner._optimize_param",
      "type": "function",
      "name": "_optimize_param",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "ExtendedStrategyTuner._optimize_param(param_name, best_value, noise_std) 方法",
      "tags": [
        "ExtendedStrategyTuner",
        "_optimize_param"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ExtendedStrategyTuner._suggest_retrieval_mode",
      "type": "function",
      "name": "_suggest_retrieval_mode",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "ExtendedStrategyTuner._suggest_retrieval_mode(current_mode) 方法",
      "tags": [
        "ExtendedStrategyTuner",
        "_suggest_retrieval_mode"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ExtendedStrategyTuner.history_size",
      "type": "function",
      "name": "history_size",
      "filePath": "src/agentkit/evolution/fitness.py",
      "layer": "utility",
      "summary": "ExtendedStrategyTuner.history_size() 方法",
      "tags": [
        "ExtendedStrategyTuner",
        "history_size"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:FitnessScore",
      "type": "class",
      "name": "FitnessScore",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "多目标适应度评分",
      "tags": [
        "FitnessScore"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FitnessScore.normalized",
      "type": "function",
      "name": "normalized",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "FitnessScore.normalized() 方法",
      "tags": [
        "FitnessScore",
        "normalized"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FitnessScore.dominates",
      "type": "function",
      "name": "dominates",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "FitnessScore.dominates(other) 方法",
      "tags": [
        "FitnessScore",
        "dominates"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PromptChromosome",
      "type": "class",
      "name": "PromptChromosome",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "Prompt 染色体 — 一个完整的 Prompt 变体",
      "tags": [
        "PromptChromosome"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PromptChromosome.to_module",
      "type": "function",
      "name": "to_module",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "PromptChromosome.to_module(name) 方法",
      "tags": [
        "PromptChromosome",
        "to_module"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PromptChromosome.from_module",
      "type": "function",
      "name": "from_module",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "PromptChromosome.from_module(cls, module) 方法",
      "tags": [
        "PromptChromosome",
        "from_module"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CrossoverOperator",
      "type": "class",
      "name": "CrossoverOperator",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "交叉算子",
      "tags": [
        "CrossoverOperator"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:CrossoverOperator.crossover",
      "type": "function",
      "name": "crossover",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "CrossoverOperator.crossover(parent_a, parent_b, crossover_rate) 方法",
      "tags": [
        "CrossoverOperator",
        "crossover"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CrossoverOperator._crossover_text",
      "type": "function",
      "name": "_crossover_text",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "CrossoverOperator._crossover_text(text_a, text_b, rate) 方法",
      "tags": [
        "CrossoverOperator",
        "_crossover_text"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CrossoverOperator._crossover_demos",
      "type": "function",
      "name": "_crossover_demos",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "CrossoverOperator._crossover_demos(demos_a, demos_b, rate) 方法",
      "tags": [
        "CrossoverOperator",
        "_crossover_demos"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CrossoverOperator._crossover_constraints",
      "type": "function",
      "name": "_crossover_constraints",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "CrossoverOperator._crossover_constraints(constraints_a, constraints_b, rate) 方法",
      "tags": [
        "CrossoverOperator",
        "_crossover_constraints"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MutationOperator",
      "type": "class",
      "name": "MutationOperator",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "变异算子",
      "tags": [
        "MutationOperator"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:MutationOperator.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "MutationOperator.__init__(llm_gateway) 方法",
      "tags": [
        "MutationOperator",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MutationOperator.mutate",
      "type": "function",
      "name": "mutate",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "MutationOperator.mutate(chromosome, mutation_rate) 异步方法",
      "tags": [
        "MutationOperator",
        "mutate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MutationOperator._mutate_instructions",
      "type": "function",
      "name": "_mutate_instructions",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "MutationOperator._mutate_instructions(instructions) 异步方法",
      "tags": [
        "MutationOperator",
        "_mutate_instructions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MutationOperator._mutate_demos",
      "type": "function",
      "name": "_mutate_demos",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "MutationOperator._mutate_demos(demos) 方法",
      "tags": [
        "MutationOperator",
        "_mutate_demos"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MutationOperator._mutate_constraints",
      "type": "function",
      "name": "_mutate_constraints",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "MutationOperator._mutate_constraints(constraints) 方法",
      "tags": [
        "MutationOperator",
        "_mutate_constraints"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:GEPAPopulation",
      "type": "class",
      "name": "GEPAPopulation",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "GEPA 种群管理",
      "tags": [
        "GEPAPopulation"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:GEPAPopulation.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "GEPAPopulation.__init__(population_size, elite_size, tournament_size) 方法",
      "tags": [
        "GEPAPopulation",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEPAPopulation.generation",
      "type": "function",
      "name": "generation",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "GEPAPopulation.generation() 方法",
      "tags": [
        "GEPAPopulation",
        "generation"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEPAPopulation.individuals",
      "type": "function",
      "name": "individuals",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "GEPAPopulation.individuals() 方法",
      "tags": [
        "GEPAPopulation",
        "individuals"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEPAPopulation.size",
      "type": "function",
      "name": "size",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "GEPAPopulation.size() 方法",
      "tags": [
        "GEPAPopulation",
        "size"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEPAPopulation.initialize",
      "type": "function",
      "name": "initialize",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "GEPAPopulation.initialize(seed) 方法",
      "tags": [
        "GEPAPopulation",
        "initialize"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEPAPopulation.add",
      "type": "function",
      "name": "add",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "GEPAPopulation.add(chromosome) 方法",
      "tags": [
        "GEPAPopulation",
        "add"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEPAPopulation.get_elite",
      "type": "function",
      "name": "get_elite",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "GEPAPopulation.get_elite() 方法",
      "tags": [
        "GEPAPopulation",
        "get_elite"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEPAPopulation.get_pareto_front",
      "type": "function",
      "name": "get_pareto_front",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "GEPAPopulation.get_pareto_front() 方法",
      "tags": [
        "GEPAPopulation",
        "get_pareto_front"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEPAPopulation.tournament_select",
      "type": "function",
      "name": "tournament_select",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "GEPAPopulation.tournament_select() 方法",
      "tags": [
        "GEPAPopulation",
        "tournament_select"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEPAPopulation.evolve",
      "type": "function",
      "name": "evolve",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "GEPAPopulation.evolve(crossover, mutation, crossover_rate, mutation_rate) 方法",
      "tags": [
        "GEPAPopulation",
        "evolve"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEPAPopulation.get_best",
      "type": "function",
      "name": "get_best",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "GEPAPopulation.get_best() 方法",
      "tags": [
        "GEPAPopulation",
        "get_best"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEPAPopulation.get_statistics",
      "type": "function",
      "name": "get_statistics",
      "filePath": "src/agentkit/evolution/genetic.py",
      "layer": "utility",
      "summary": "GEPAPopulation.get_statistics() 方法",
      "tags": [
        "GEPAPopulation",
        "get_statistics"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SoulEvolutionConfig",
      "type": "class",
      "name": "SoulEvolutionConfig",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "Soul 进化多维触发配置",
      "tags": [
        "SoulEvolutionConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EvolutionLogEntry",
      "type": "class",
      "name": "EvolutionLogEntry",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "进化日志条目",
      "tags": [
        "EvolutionLogEntry"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EvolutionMixin",
      "type": "class",
      "name": "EvolutionMixin",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "进化混入类，将进化引擎集成到 Agent 生命周期。",
      "tags": [
        "EvolutionMixin"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:EvolutionMixin.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "EvolutionMixin.__init__(reflector, prompt_optimizer, strategy_tuner, ab_tester, evolution_store, reflector_type, llm_gateway, auxiliary_model, strategy_tuning_enabled, evolution_config) 方法",
      "tags": [
        "EvolutionMixin",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionMixin._create_reflector",
      "type": "function",
      "name": "_create_reflector",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "EvolutionMixin._create_reflector(reflector_type, llm_gateway, auxiliary_model) 方法",
      "tags": [
        "EvolutionMixin",
        "_create_reflector"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionMixin.evolve_after_task",
      "type": "function",
      "name": "evolve_after_task",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "EvolutionMixin.evolve_after_task(task, result, memory_store) 异步方法",
      "tags": [
        "EvolutionMixin",
        "evolve_after_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionMixin._optimize_with_context",
      "type": "function",
      "name": "_optimize_with_context",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "EvolutionMixin._optimize_with_context(module, reflection) 异步方法",
      "tags": [
        "EvolutionMixin",
        "_optimize_with_context"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionMixin._run_ab_test",
      "type": "function",
      "name": "_run_ab_test",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "EvolutionMixin._run_ab_test(task, result, optimized, reflection) 异步方法",
      "tags": [
        "EvolutionMixin",
        "_run_ab_test"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionMixin._run_strategy_tuning",
      "type": "function",
      "name": "_run_strategy_tuning",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "EvolutionMixin._run_strategy_tuning(task, result, reflection) 异步方法",
      "tags": [
        "EvolutionMixin",
        "_run_strategy_tuning"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionMixin.get_evolution_history",
      "type": "function",
      "name": "get_evolution_history",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "EvolutionMixin.get_evolution_history() 方法",
      "tags": [
        "EvolutionMixin",
        "get_evolution_history"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionMixin.set_current_module",
      "type": "function",
      "name": "set_current_module",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "EvolutionMixin.set_current_module(module) 方法",
      "tags": [
        "EvolutionMixin",
        "set_current_module"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionMixin._apply_change",
      "type": "function",
      "name": "_apply_change",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "EvolutionMixin._apply_change(task, result, optimized, reflection) 异步方法",
      "tags": [
        "EvolutionMixin",
        "_apply_change"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionMixin._rollback_change",
      "type": "function",
      "name": "_rollback_change",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "EvolutionMixin._rollback_change(log_entry) 异步方法",
      "tags": [
        "EvolutionMixin",
        "_rollback_change"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionMixin.record_reflection",
      "type": "function",
      "name": "record_reflection",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "EvolutionMixin.record_reflection(pattern, reflection, task_type, score) 方法",
      "tags": [
        "EvolutionMixin",
        "record_reflection"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EvolutionMixin.evolve_soul",
      "type": "function",
      "name": "evolve_soul",
      "filePath": "src/agentkit/evolution/lifecycle.py",
      "layer": "utility",
      "summary": "EvolutionMixin.evolve_soul(task, result, memory_store, reflection, task_type, score) 异步方法",
      "tags": [
        "EvolutionMixin",
        "evolve_soul"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LLMReflector",
      "type": "class",
      "name": "LLMReflector",
      "filePath": "src/agentkit/evolution/llm_reflector.py",
      "layer": "utility",
      "summary": "LLM 驱动的反思器，通过 LLM 分析执行轨迹生成结构化反思",
      "tags": [
        "LLMReflector"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:LLMReflector.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/llm_reflector.py",
      "layer": "utility",
      "summary": "LLMReflector.__init__(llm_gateway, model) 方法",
      "tags": [
        "LLMReflector",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMReflector._sanitize_for_prompt",
      "type": "function",
      "name": "_sanitize_for_prompt",
      "filePath": "src/agentkit/evolution/llm_reflector.py",
      "layer": "utility",
      "summary": "LLMReflector._sanitize_for_prompt(value, max_length) 方法",
      "tags": [
        "LLMReflector",
        "_sanitize_for_prompt"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMReflector.reflect",
      "type": "function",
      "name": "reflect",
      "filePath": "src/agentkit/evolution/llm_reflector.py",
      "layer": "utility",
      "summary": "LLMReflector.reflect(task, result, trace) 异步方法",
      "tags": [
        "LLMReflector",
        "reflect"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMReflector._build_reflection_prompt",
      "type": "function",
      "name": "_build_reflection_prompt",
      "filePath": "src/agentkit/evolution/llm_reflector.py",
      "layer": "utility",
      "summary": "LLMReflector._build_reflection_prompt(task, result, trace) 方法",
      "tags": [
        "LLMReflector",
        "_build_reflection_prompt"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMReflector._parse_reflection_response",
      "type": "function",
      "name": "_parse_reflection_response",
      "filePath": "src/agentkit/evolution/llm_reflector.py",
      "layer": "utility",
      "summary": "LLMReflector._parse_reflection_response(response_content, task, result) 方法",
      "tags": [
        "LLMReflector",
        "_parse_reflection_response"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMReflector._build_reflection_from_data",
      "type": "function",
      "name": "_build_reflection_from_data",
      "filePath": "src/agentkit/evolution/llm_reflector.py",
      "layer": "utility",
      "summary": "LLMReflector._build_reflection_from_data(data, task) 方法",
      "tags": [
        "LLMReflector",
        "_build_reflection_from_data"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EvolutionEventModel",
      "type": "class",
      "name": "EvolutionEventModel",
      "filePath": "src/agentkit/evolution/models.py",
      "layer": "utility",
      "summary": "进化事件 ORM 模型",
      "tags": [
        "EvolutionEventModel"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillVersionModel",
      "type": "class",
      "name": "SkillVersionModel",
      "filePath": "src/agentkit/evolution/models.py",
      "layer": "utility",
      "summary": "技能版本 ORM 模型",
      "tags": [
        "SkillVersionModel"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ABTestResultModel",
      "type": "class",
      "name": "ABTestResultModel",
      "filePath": "src/agentkit/evolution/models.py",
      "layer": "utility",
      "summary": "A/B 测试结果 ORM 模型",
      "tags": [
        "ABTestResultModel"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ExecutionPath",
      "type": "class",
      "name": "ExecutionPath",
      "filePath": "src/agentkit/evolution/path_optimizer.py",
      "layer": "utility",
      "summary": "执行路径数据模型",
      "tags": [
        "ExecutionPath"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PathUpdateResult",
      "type": "class",
      "name": "PathUpdateResult",
      "filePath": "src/agentkit/evolution/path_optimizer.py",
      "layer": "utility",
      "summary": "路径更新结果",
      "tags": [
        "PathUpdateResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PathOptimizer",
      "type": "class",
      "name": "PathOptimizer",
      "filePath": "src/agentkit/evolution/path_optimizer.py",
      "layer": "utility",
      "summary": "执行路径优化器",
      "tags": [
        "PathOptimizer"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:PathOptimizer.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/path_optimizer.py",
      "layer": "utility",
      "summary": "PathOptimizer.__init__(experience_store, min_sample_count, success_rate_threshold, duration_improvement_threshold) 方法",
      "tags": [
        "PathOptimizer",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PathOptimizer.get_recommended_path",
      "type": "function",
      "name": "get_recommended_path",
      "filePath": "src/agentkit/evolution/path_optimizer.py",
      "layer": "utility",
      "summary": "PathOptimizer.get_recommended_path(task_type) 方法",
      "tags": [
        "PathOptimizer",
        "get_recommended_path"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PathOptimizer.evaluate_and_update",
      "type": "function",
      "name": "evaluate_and_update",
      "filePath": "src/agentkit/evolution/path_optimizer.py",
      "layer": "utility",
      "summary": "PathOptimizer.evaluate_and_update(task_type, new_path) 异步方法",
      "tags": [
        "PathOptimizer",
        "evaluate_and_update"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PathOptimizer._compare_and_decide",
      "type": "function",
      "name": "_compare_and_decide",
      "filePath": "src/agentkit/evolution/path_optimizer.py",
      "layer": "utility",
      "summary": "PathOptimizer._compare_and_decide(task_type, current, new) 方法",
      "tags": [
        "PathOptimizer",
        "_compare_and_decide"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PathOptimizer._apply_update",
      "type": "function",
      "name": "_apply_update",
      "filePath": "src/agentkit/evolution/path_optimizer.py",
      "layer": "utility",
      "summary": "PathOptimizer._apply_update(task_type, old, new, reason) 方法",
      "tags": [
        "PathOptimizer",
        "_apply_update"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PathOptimizer.get_pending_paths",
      "type": "function",
      "name": "get_pending_paths",
      "filePath": "src/agentkit/evolution/path_optimizer.py",
      "layer": "utility",
      "summary": "PathOptimizer.get_pending_paths(task_type) 方法",
      "tags": [
        "PathOptimizer",
        "get_pending_paths"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PGEvolutionEventModel",
      "type": "class",
      "name": "PGEvolutionEventModel",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQL 进化事件 ORM 模型",
      "tags": [
        "PGEvolutionEventModel"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PGSkillVersionModel",
      "type": "class",
      "name": "PGSkillVersionModel",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQL 技能版本 ORM 模型",
      "tags": [
        "PGSkillVersionModel"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PGABTestResultModel",
      "type": "class",
      "name": "PGABTestResultModel",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQL A/B 测试结果 ORM 模型",
      "tags": [
        "PGABTestResultModel"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PostgreSQLEvolutionStore",
      "type": "class",
      "name": "PostgreSQLEvolutionStore",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQL 异步进化存储",
      "tags": [
        "PostgreSQLEvolutionStore"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:PostgreSQLEvolutionStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQLEvolutionStore.__init__(database_url) 方法",
      "tags": [
        "PostgreSQLEvolutionStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PostgreSQLEvolutionStore._ensure_initialized",
      "type": "function",
      "name": "_ensure_initialized",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQLEvolutionStore._ensure_initialized() 异步方法",
      "tags": [
        "PostgreSQLEvolutionStore",
        "_ensure_initialized"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PostgreSQLEvolutionStore.ensure_tables",
      "type": "function",
      "name": "ensure_tables",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQLEvolutionStore.ensure_tables() 异步方法",
      "tags": [
        "PostgreSQLEvolutionStore",
        "ensure_tables"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PostgreSQLEvolutionStore.close",
      "type": "function",
      "name": "close",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQLEvolutionStore.close() 异步方法",
      "tags": [
        "PostgreSQLEvolutionStore",
        "close"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PostgreSQLEvolutionStore.__aenter__",
      "type": "function",
      "name": "__aenter__",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQLEvolutionStore.__aenter__() 异步方法",
      "tags": [
        "PostgreSQLEvolutionStore",
        "__aenter__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PostgreSQLEvolutionStore.__aexit__",
      "type": "function",
      "name": "__aexit__",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQLEvolutionStore.__aexit__(exc_type, exc_val, exc_tb) 异步方法",
      "tags": [
        "PostgreSQLEvolutionStore",
        "__aexit__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PostgreSQLEvolutionStore.record",
      "type": "function",
      "name": "record",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQLEvolutionStore.record(event) 异步方法",
      "tags": [
        "PostgreSQLEvolutionStore",
        "record"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PostgreSQLEvolutionStore.rollback",
      "type": "function",
      "name": "rollback",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQLEvolutionStore.rollback(event_id) 异步方法",
      "tags": [
        "PostgreSQLEvolutionStore",
        "rollback"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PostgreSQLEvolutionStore.list_events",
      "type": "function",
      "name": "list_events",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQLEvolutionStore.list_events(agent_name, change_type, status, limit) 异步方法",
      "tags": [
        "PostgreSQLEvolutionStore",
        "list_events"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PostgreSQLEvolutionStore.record_skill_version",
      "type": "function",
      "name": "record_skill_version",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQLEvolutionStore.record_skill_version(skill_name, version, content, parent_version) 异步方法",
      "tags": [
        "PostgreSQLEvolutionStore",
        "record_skill_version"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PostgreSQLEvolutionStore.list_skill_versions",
      "type": "function",
      "name": "list_skill_versions",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQLEvolutionStore.list_skill_versions(skill_name, limit) 异步方法",
      "tags": [
        "PostgreSQLEvolutionStore",
        "list_skill_versions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PostgreSQLEvolutionStore.record_ab_test_result",
      "type": "function",
      "name": "record_ab_test_result",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQLEvolutionStore.record_ab_test_result(test_id, variant, score, sample_count) 异步方法",
      "tags": [
        "PostgreSQLEvolutionStore",
        "record_ab_test_result"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PostgreSQLEvolutionStore.get_ab_test_results",
      "type": "function",
      "name": "get_ab_test_results",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "PostgreSQLEvolutionStore.get_ab_test_results(test_id, limit) 异步方法",
      "tags": [
        "PostgreSQLEvolutionStore",
        "get_ab_test_results"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:WarningLevel",
      "type": "class",
      "name": "WarningLevel",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "预警级别",
      "tags": [
        "WarningLevel"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PitfallWarning",
      "type": "class",
      "name": "PitfallWarning",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "避坑预警",
      "tags": [
        "PitfallWarning"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ExperienceStoreProtocol",
      "type": "class",
      "name": "ExperienceStoreProtocol",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "ExperienceStore 协议接口，用于类型标注",
      "tags": [
        "ExperienceStoreProtocol"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ExperienceStoreProtocol.search",
      "type": "function",
      "name": "search",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "ExperienceStoreProtocol.search(query, top_k, task_type, search_multiplier) 异步方法",
      "tags": [
        "ExperienceStoreProtocol",
        "search"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PitfallDetector",
      "type": "class",
      "name": "PitfallDetector",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "避坑检测器",
      "tags": [
        "PitfallDetector"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:PitfallDetector.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "PitfallDetector.__init__(experience_store, similarity_threshold, max_search_results) 方法",
      "tags": [
        "PitfallDetector",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PitfallDetector.check_pitfalls",
      "type": "function",
      "name": "check_pitfalls",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "PitfallDetector.check_pitfalls(task_type, planned_steps) 异步方法",
      "tags": [
        "PitfallDetector",
        "check_pitfalls"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PitfallDetector._search_experiences",
      "type": "function",
      "name": "_search_experiences",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "PitfallDetector._search_experiences(task_type) 异步方法",
      "tags": [
        "PitfallDetector",
        "_search_experiences"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PitfallDetector._extract_step_failure_stats",
      "type": "function",
      "name": "_extract_step_failure_stats",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "PitfallDetector._extract_step_failure_stats(failed_experiences) 方法",
      "tags": [
        "PitfallDetector",
        "_extract_step_failure_stats"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PitfallDetector._match_and_warn",
      "type": "function",
      "name": "_match_and_warn",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "PitfallDetector._match_and_warn(planned_steps, step_failure_stats) 方法",
      "tags": [
        "PitfallDetector",
        "_match_and_warn"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:_StepFailureStats",
      "type": "class",
      "name": "_StepFailureStats",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "步骤级别的失败统计（内部使用）",
      "tags": [
        "_StepFailureStats"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Signature",
      "type": "class",
      "name": "Signature",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "Prompt 签名 - 定义输入/输出字段",
      "tags": [
        "Signature"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Signature.to_prompt_prefix",
      "type": "function",
      "name": "to_prompt_prefix",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "Signature.to_prompt_prefix() 方法",
      "tags": [
        "Signature",
        "to_prompt_prefix"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Module",
      "type": "class",
      "name": "Module",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "可组合的 Prompt 策略模块",
      "tags": [
        "Module"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Module.render",
      "type": "function",
      "name": "render",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "Module.render() 方法",
      "tags": [
        "Module",
        "render"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:BootstrapPromptOptimizer",
      "type": "class",
      "name": "BootstrapPromptOptimizer",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "基于 few-shot + failure patterns 的规则优化器",
      "tags": [
        "BootstrapPromptOptimizer"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:BootstrapPromptOptimizer.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "BootstrapPromptOptimizer.__init__(max_demos, min_examples_for_optimization) 方法",
      "tags": [
        "BootstrapPromptOptimizer",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BootstrapPromptOptimizer.add_example",
      "type": "function",
      "name": "add_example",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "BootstrapPromptOptimizer.add_example(input_data, output_data, quality_score) 方法",
      "tags": [
        "BootstrapPromptOptimizer",
        "add_example"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BootstrapPromptOptimizer.optimize",
      "type": "function",
      "name": "optimize",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "BootstrapPromptOptimizer.optimize(module) 异步方法",
      "tags": [
        "BootstrapPromptOptimizer",
        "optimize"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BootstrapPromptOptimizer.example_count",
      "type": "function",
      "name": "example_count",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "BootstrapPromptOptimizer.example_count() 方法",
      "tags": [
        "BootstrapPromptOptimizer",
        "example_count"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LLMPromptOptimizer",
      "type": "class",
      "name": "LLMPromptOptimizer",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "LLM 驱动的 Prompt 优化器",
      "tags": [
        "LLMPromptOptimizer"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:LLMPromptOptimizer.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "LLMPromptOptimizer.__init__(llm_gateway, model, max_demos, min_examples_for_optimization) 方法",
      "tags": [
        "LLMPromptOptimizer",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMPromptOptimizer.add_example",
      "type": "function",
      "name": "add_example",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "LLMPromptOptimizer.add_example(input_data, output_data, quality_score) 方法",
      "tags": [
        "LLMPromptOptimizer",
        "add_example"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMPromptOptimizer.optimize",
      "type": "function",
      "name": "optimize",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "LLMPromptOptimizer.optimize(module, trace, reflection) 异步方法",
      "tags": [
        "LLMPromptOptimizer",
        "optimize"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMPromptOptimizer._llm_optimize_instruction",
      "type": "function",
      "name": "_llm_optimize_instruction",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "LLMPromptOptimizer._llm_optimize_instruction(module, trace, reflection) 异步方法",
      "tags": [
        "LLMPromptOptimizer",
        "_llm_optimize_instruction"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMPromptOptimizer._build_optimization_prompt",
      "type": "function",
      "name": "_build_optimization_prompt",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "LLMPromptOptimizer._build_optimization_prompt(module, trace, reflection) 方法",
      "tags": [
        "LLMPromptOptimizer",
        "_build_optimization_prompt"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMPromptOptimizer.example_count",
      "type": "function",
      "name": "example_count",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "LLMPromptOptimizer.example_count() 方法",
      "tags": [
        "LLMPromptOptimizer",
        "example_count"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Reflection",
      "type": "class",
      "name": "Reflection",
      "filePath": "src/agentkit/evolution/reflector.py",
      "layer": "utility",
      "summary": "反思结果",
      "tags": [
        "Reflection"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RuleBasedReflector",
      "type": "class",
      "name": "RuleBasedReflector",
      "filePath": "src/agentkit/evolution/reflector.py",
      "layer": "utility",
      "summary": "基于规则的执行反思器",
      "tags": [
        "RuleBasedReflector"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:RuleBasedReflector.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/reflector.py",
      "layer": "utility",
      "summary": "RuleBasedReflector.__init__(quality_scorer, pattern_extractor) 方法",
      "tags": [
        "RuleBasedReflector",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RuleBasedReflector.reflect",
      "type": "function",
      "name": "reflect",
      "filePath": "src/agentkit/evolution/reflector.py",
      "layer": "utility",
      "summary": "RuleBasedReflector.reflect(task, result) 异步方法",
      "tags": [
        "RuleBasedReflector",
        "reflect"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RuleBasedReflector._score_quality",
      "type": "function",
      "name": "_score_quality",
      "filePath": "src/agentkit/evolution/reflector.py",
      "layer": "utility",
      "summary": "RuleBasedReflector._score_quality(task, result) 异步方法",
      "tags": [
        "RuleBasedReflector",
        "_score_quality"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RuleBasedReflector._extract_patterns",
      "type": "function",
      "name": "_extract_patterns",
      "filePath": "src/agentkit/evolution/reflector.py",
      "layer": "utility",
      "summary": "RuleBasedReflector._extract_patterns(task, result, outcome) 异步方法",
      "tags": [
        "RuleBasedReflector",
        "_extract_patterns"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RuleBasedReflector._generate_insights",
      "type": "function",
      "name": "_generate_insights",
      "filePath": "src/agentkit/evolution/reflector.py",
      "layer": "utility",
      "summary": "RuleBasedReflector._generate_insights(outcome, quality_score, patterns) 方法",
      "tags": [
        "RuleBasedReflector",
        "_generate_insights"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RuleBasedReflector._generate_suggestions",
      "type": "function",
      "name": "_generate_suggestions",
      "filePath": "src/agentkit/evolution/reflector.py",
      "layer": "utility",
      "summary": "RuleBasedReflector._generate_suggestions(outcome, quality_score, patterns) 方法",
      "tags": [
        "RuleBasedReflector",
        "_generate_suggestions"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:StrategyConfig",
      "type": "class",
      "name": "StrategyConfig",
      "filePath": "src/agentkit/evolution/strategy_tuner.py",
      "layer": "utility",
      "summary": "策略配置",
      "tags": [
        "StrategyConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:StrategyTuner",
      "type": "class",
      "name": "StrategyTuner",
      "filePath": "src/agentkit/evolution/strategy_tuner.py",
      "layer": "utility",
      "summary": "策略调优器",
      "tags": [
        "StrategyTuner"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:StrategyTuner.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/evolution/strategy_tuner.py",
      "layer": "utility",
      "summary": "StrategyTuner.__init__(param_ranges) 方法",
      "tags": [
        "StrategyTuner",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StrategyTuner.record",
      "type": "function",
      "name": "record",
      "filePath": "src/agentkit/evolution/strategy_tuner.py",
      "layer": "utility",
      "summary": "StrategyTuner.record(config, metric) 方法",
      "tags": [
        "StrategyTuner",
        "record"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StrategyTuner.suggest",
      "type": "function",
      "name": "suggest",
      "filePath": "src/agentkit/evolution/strategy_tuner.py",
      "layer": "utility",
      "summary": "StrategyTuner.suggest(current) 异步方法",
      "tags": [
        "StrategyTuner",
        "suggest"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StrategyTuner._optimize_param_1d",
      "type": "function",
      "name": "_optimize_param_1d",
      "filePath": "src/agentkit/evolution/strategy_tuner.py",
      "layer": "utility",
      "summary": "StrategyTuner._optimize_param_1d(param_name, get_value, best_value, noise_std) 方法",
      "tags": [
        "StrategyTuner",
        "_optimize_param_1d"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StrategyTuner._clamp",
      "type": "function",
      "name": "_clamp",
      "filePath": "src/agentkit/evolution/strategy_tuner.py",
      "layer": "utility",
      "summary": "StrategyTuner._clamp(value, min_val, max_val) 方法",
      "tags": [
        "StrategyTuner",
        "_clamp"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CacheEntry",
      "type": "class",
      "name": "CacheEntry",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "A cached LLM response with metadata.",
      "tags": [
        "CacheEntry"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CacheResult",
      "type": "class",
      "name": "CacheResult",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "Result of a cache lookup.",
      "tags": [
        "CacheResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LLMCache",
      "type": "class",
      "name": "LLMCache",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "LLM response cache interface.",
      "tags": [
        "LLMCache"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:LLMCache.get",
      "type": "function",
      "name": "get",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "LLMCache.get(key) 异步方法",
      "tags": [
        "LLMCache",
        "get"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMCache.semantic_search",
      "type": "function",
      "name": "semantic_search",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "LLMCache.semantic_search(query_embedding, threshold) 异步方法",
      "tags": [
        "LLMCache",
        "semantic_search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMCache.put",
      "type": "function",
      "name": "put",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "LLMCache.put(key, response, query_embedding) 异步方法",
      "tags": [
        "LLMCache",
        "put"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMCache.invalidate",
      "type": "function",
      "name": "invalidate",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "LLMCache.invalidate(pattern) 异步方法",
      "tags": [
        "LLMCache",
        "invalidate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMCache.stats",
      "type": "function",
      "name": "stats",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "LLMCache.stats() 异步方法",
      "tags": [
        "LLMCache",
        "stats"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:InMemoryLLMCache",
      "type": "class",
      "name": "InMemoryLLMCache",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "In-memory LLM cache with LRU eviction and semantic search.",
      "tags": [
        "InMemoryLLMCache"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:InMemoryLLMCache.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "InMemoryLLMCache.__init__(max_entries, exact_ttl, semantic_ttl, similarity_threshold) 方法",
      "tags": [
        "InMemoryLLMCache",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryLLMCache.get",
      "type": "function",
      "name": "get",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "InMemoryLLMCache.get(key) 异步方法",
      "tags": [
        "InMemoryLLMCache",
        "get"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryLLMCache.semantic_search",
      "type": "function",
      "name": "semantic_search",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "InMemoryLLMCache.semantic_search(query_embedding, threshold) 异步方法",
      "tags": [
        "InMemoryLLMCache",
        "semantic_search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryLLMCache.put",
      "type": "function",
      "name": "put",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "InMemoryLLMCache.put(key, response, query_embedding) 异步方法",
      "tags": [
        "InMemoryLLMCache",
        "put"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryLLMCache.invalidate",
      "type": "function",
      "name": "invalidate",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "InMemoryLLMCache.invalidate(pattern) 异步方法",
      "tags": [
        "InMemoryLLMCache",
        "invalidate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryLLMCache.stats",
      "type": "function",
      "name": "stats",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "InMemoryLLMCache.stats() 异步方法",
      "tags": [
        "InMemoryLLMCache",
        "stats"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RedisLLMCache",
      "type": "class",
      "name": "RedisLLMCache",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "Redis-backed LLM cache with SET index for semantic search.",
      "tags": [
        "RedisLLMCache"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:RedisLLMCache.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "RedisLLMCache.__init__(redis_url, max_entries, exact_ttl, semantic_ttl, similarity_threshold, max_entries_to_scan, fallback) 方法",
      "tags": [
        "RedisLLMCache",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisLLMCache._get_redis",
      "type": "function",
      "name": "_get_redis",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "RedisLLMCache._get_redis() 异步方法",
      "tags": [
        "RedisLLMCache",
        "_get_redis"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisLLMCache.aclose",
      "type": "function",
      "name": "aclose",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "RedisLLMCache.aclose() 异步方法",
      "tags": [
        "RedisLLMCache",
        "aclose"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisLLMCache._degrade_to_fallback",
      "type": "function",
      "name": "_degrade_to_fallback",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "RedisLLMCache._degrade_to_fallback() 方法",
      "tags": [
        "RedisLLMCache",
        "_degrade_to_fallback"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisLLMCache._try_recover",
      "type": "function",
      "name": "_try_recover",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "RedisLLMCache._try_recover() 方法",
      "tags": [
        "RedisLLMCache",
        "_try_recover"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisLLMCache.get",
      "type": "function",
      "name": "get",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "RedisLLMCache.get(key) 异步方法",
      "tags": [
        "RedisLLMCache",
        "get"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisLLMCache.semantic_search",
      "type": "function",
      "name": "semantic_search",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "RedisLLMCache.semantic_search(query_embedding, threshold) 异步方法",
      "tags": [
        "RedisLLMCache",
        "semantic_search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisLLMCache.put",
      "type": "function",
      "name": "put",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "RedisLLMCache.put(key, response, query_embedding) 异步方法",
      "tags": [
        "RedisLLMCache",
        "put"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisLLMCache.invalidate",
      "type": "function",
      "name": "invalidate",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "RedisLLMCache.invalidate(pattern) 异步方法",
      "tags": [
        "RedisLLMCache",
        "invalidate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisLLMCache.stats",
      "type": "function",
      "name": "stats",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "RedisLLMCache.stats() 异步方法",
      "tags": [
        "RedisLLMCache",
        "stats"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CacheConfig",
      "type": "class",
      "name": "CacheConfig",
      "filePath": "src/agentkit/llm/config.py",
      "layer": "utility",
      "summary": "LLM Cache 配置",
      "tags": [
        "CacheConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CacheConfig.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/llm/config.py",
      "layer": "utility",
      "summary": "CacheConfig.from_dict(cls, data) 方法",
      "tags": [
        "CacheConfig",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ProviderConfig",
      "type": "class",
      "name": "ProviderConfig",
      "filePath": "src/agentkit/llm/config.py",
      "layer": "utility",
      "summary": "Provider 配置",
      "tags": [
        "ProviderConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LLMConfig",
      "type": "class",
      "name": "LLMConfig",
      "filePath": "src/agentkit/llm/config.py",
      "layer": "utility",
      "summary": "LLM 配置",
      "tags": [
        "LLMConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMConfig.from_yaml",
      "type": "function",
      "name": "from_yaml",
      "filePath": "src/agentkit/llm/config.py",
      "layer": "utility",
      "summary": "LLMConfig.from_yaml(cls, path) 方法",
      "tags": [
        "LLMConfig",
        "from_yaml"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMConfig.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/llm/config.py",
      "layer": "utility",
      "summary": "LLMConfig.from_dict(cls, data) 方法",
      "tags": [
        "LLMConfig",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LLMGateway",
      "type": "class",
      "name": "LLMGateway",
      "filePath": "src/agentkit/llm/gateway.py",
      "layer": "utility",
      "summary": "LLM 网关 - Provider 注册、模型别名解析、Fallback、Usage 追踪、Cache",
      "tags": [
        "LLMGateway"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:LLMGateway.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/gateway.py",
      "layer": "utility",
      "summary": "LLMGateway.__init__(config, usage_store) 方法",
      "tags": [
        "LLMGateway",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMGateway._create_embedder",
      "type": "function",
      "name": "_create_embedder",
      "filePath": "src/agentkit/llm/gateway.py",
      "layer": "utility",
      "summary": "LLMGateway._create_embedder(cache_config) 方法",
      "tags": [
        "LLMGateway",
        "_create_embedder"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMGateway.register_provider",
      "type": "function",
      "name": "register_provider",
      "filePath": "src/agentkit/llm/gateway.py",
      "layer": "utility",
      "summary": "LLMGateway.register_provider(name, provider) 方法",
      "tags": [
        "LLMGateway",
        "register_provider"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMGateway.has_providers",
      "type": "function",
      "name": "has_providers",
      "filePath": "src/agentkit/llm/gateway.py",
      "layer": "utility",
      "summary": "LLMGateway.has_providers() 方法",
      "tags": [
        "LLMGateway",
        "has_providers"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMGateway.chat",
      "type": "function",
      "name": "chat",
      "filePath": "src/agentkit/llm/gateway.py",
      "layer": "utility",
      "summary": "LLMGateway.chat(messages, model, agent_name, task_type, tools, tool_choice, timeout) 异步方法 - 支持超时透传和空响应检测",
      "tags": [
        "LLMGateway",
        "chat"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMGateway.chat_stream",
      "type": "function",
      "name": "chat_stream",
      "filePath": "src/agentkit/llm/gateway.py",
      "layer": "utility",
      "summary": "LLMGateway.chat_stream(messages, model, agent_name, task_type, tools, tool_choice, timeout) 异步方法 - 支持超时透传和空流检测",
      "tags": [
        "LLMGateway",
        "chat_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMGateway._get_models_to_try",
      "type": "function",
      "name": "_get_models_to_try",
      "filePath": "src/agentkit/llm/gateway.py",
      "layer": "utility",
      "summary": "LLMGateway._get_models_to_try(resolved_model) 方法",
      "tags": [
        "LLMGateway",
        "_get_models_to_try"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMGateway._resolve_model_alias",
      "type": "function",
      "name": "_resolve_model_alias",
      "filePath": "src/agentkit/llm/gateway.py",
      "layer": "utility",
      "summary": "LLMGateway._resolve_model_alias(model) 方法",
      "tags": [
        "LLMGateway",
        "_resolve_model_alias"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMGateway._resolve_model",
      "type": "function",
      "name": "_resolve_model",
      "filePath": "src/agentkit/llm/gateway.py",
      "layer": "utility",
      "summary": "LLMGateway._resolve_model(model) 方法",
      "tags": [
        "LLMGateway",
        "_resolve_model"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMGateway._get_fallback_model",
      "type": "function",
      "name": "_get_fallback_model",
      "filePath": "src/agentkit/llm/gateway.py",
      "layer": "utility",
      "summary": "LLMGateway._get_fallback_model(model) 方法",
      "tags": [
        "LLMGateway",
        "_get_fallback_model"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMGateway._calculate_cost",
      "type": "function",
      "name": "_calculate_cost",
      "filePath": "src/agentkit/llm/gateway.py",
      "layer": "utility",
      "summary": "LLMGateway._calculate_cost(model, usage) 方法",
      "tags": [
        "LLMGateway",
        "_calculate_cost"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMGateway.get_usage",
      "type": "function",
      "name": "get_usage",
      "filePath": "src/agentkit/llm/gateway.py",
      "layer": "utility",
      "summary": "LLMGateway.get_usage(agent_name, start_time, end_time) 方法",
      "tags": [
        "LLMGateway",
        "get_usage"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TokenUsage",
      "type": "class",
      "name": "TokenUsage",
      "filePath": "src/agentkit/llm/protocol.py",
      "layer": "utility",
      "summary": "Token 使用量",
      "tags": [
        "TokenUsage"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TokenUsage.total_tokens",
      "type": "function",
      "name": "total_tokens",
      "filePath": "src/agentkit/llm/protocol.py",
      "layer": "utility",
      "summary": "TokenUsage.total_tokens() 方法",
      "tags": [
        "TokenUsage",
        "total_tokens"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ToolCall",
      "type": "class",
      "name": "ToolCall",
      "filePath": "src/agentkit/llm/protocol.py",
      "layer": "utility",
      "summary": "工具调用",
      "tags": [
        "ToolCall"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LLMRequest",
      "type": "class",
      "name": "LLMRequest",
      "filePath": "src/agentkit/llm/protocol.py",
      "layer": "utility",
      "summary": "LLM 请求（含 timeout 超时控制）",
      "tags": [
        "LLMRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMRequest.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/protocol.py",
      "layer": "utility",
      "summary": "LLMRequest.__init__(messages, model, tools, tool_choice, temperature, max_tokens, timeout) 方法",
      "tags": [
        "LLMRequest",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:StreamChunk",
      "type": "class",
      "name": "StreamChunk",
      "filePath": "src/agentkit/llm/protocol.py",
      "layer": "utility",
      "summary": "LLM 流式响应块",
      "tags": [
        "StreamChunk"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LLMResponse",
      "type": "class",
      "name": "LLMResponse",
      "filePath": "src/agentkit/llm/protocol.py",
      "layer": "utility",
      "summary": "LLM 响应",
      "tags": [
        "LLMResponse"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMResponse.has_tool_calls",
      "type": "function",
      "name": "has_tool_calls",
      "filePath": "src/agentkit/llm/protocol.py",
      "layer": "utility",
      "summary": "LLMResponse.has_tool_calls() 方法",
      "tags": [
        "LLMResponse",
        "has_tool_calls"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LLMProvider",
      "type": "class",
      "name": "LLMProvider",
      "filePath": "src/agentkit/llm/protocol.py",
      "layer": "utility",
      "summary": "LLM Provider 抽象基类",
      "tags": [
        "LLMProvider"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMProvider.chat",
      "type": "function",
      "name": "chat",
      "filePath": "src/agentkit/llm/protocol.py",
      "layer": "utility",
      "summary": "LLMProvider.chat(request) 异步方法",
      "tags": [
        "LLMProvider",
        "chat"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMProvider.chat_stream",
      "type": "function",
      "name": "chat_stream",
      "filePath": "src/agentkit/llm/protocol.py",
      "layer": "utility",
      "summary": "LLMProvider.chat_stream(request) 异步方法",
      "tags": [
        "LLMProvider",
        "chat_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:_AnthropicStreamContext",
      "type": "class",
      "name": "_AnthropicStreamContext",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "Wraps an httpx streaming response context manager for use with retry/circuit breaker.",
      "tags": [
        "_AnthropicStreamContext"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_AnthropicStreamContext.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "_AnthropicStreamContext.__init__(response_ctx, response) 方法",
      "tags": [
        "_AnthropicStreamContext",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_AnthropicStreamContext.__aenter__",
      "type": "function",
      "name": "__aenter__",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "_AnthropicStreamContext.__aenter__() 异步方法",
      "tags": [
        "_AnthropicStreamContext",
        "__aenter__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_AnthropicStreamContext.__aexit__",
      "type": "function",
      "name": "__aexit__",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "_AnthropicStreamContext.__aexit__(exc_type, exc_val, exc_tb) 异步方法",
      "tags": [
        "_AnthropicStreamContext",
        "__aexit__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AnthropicProvider",
      "type": "class",
      "name": "AnthropicProvider",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "Anthropic Messages API 原生 Provider",
      "tags": [
        "AnthropicProvider"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:AnthropicProvider.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "AnthropicProvider.__init__(api_key, model, max_tokens, base_url, timeout, thinking_enabled, retry_config, circuit_breaker_config, max_connections, max_keepalive_connections, keepalive_expiry) 方法",
      "tags": [
        "AnthropicProvider",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AnthropicProvider._get_client",
      "type": "function",
      "name": "_get_client",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "AnthropicProvider._get_client() 方法",
      "tags": [
        "AnthropicProvider",
        "_get_client"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AnthropicProvider.close",
      "type": "function",
      "name": "close",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "AnthropicProvider.close() 异步方法",
      "tags": [
        "AnthropicProvider",
        "close"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AnthropicProvider._build_headers",
      "type": "function",
      "name": "_build_headers",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "AnthropicProvider._build_headers() 方法",
      "tags": [
        "AnthropicProvider",
        "_build_headers"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AnthropicProvider._convert_messages",
      "type": "function",
      "name": "_convert_messages",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "AnthropicProvider._convert_messages(messages) 方法",
      "tags": [
        "AnthropicProvider",
        "_convert_messages"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AnthropicProvider._convert_tools",
      "type": "function",
      "name": "_convert_tools",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "AnthropicProvider._convert_tools(tools) 方法",
      "tags": [
        "AnthropicProvider",
        "_convert_tools"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AnthropicProvider._convert_tool_choice",
      "type": "function",
      "name": "_convert_tool_choice",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "AnthropicProvider._convert_tool_choice(tool_choice) 方法",
      "tags": [
        "AnthropicProvider",
        "_convert_tool_choice"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AnthropicProvider._parse_response",
      "type": "function",
      "name": "_parse_response",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "AnthropicProvider._parse_response(data, model) 方法",
      "tags": [
        "AnthropicProvider",
        "_parse_response"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AnthropicProvider._handle_error",
      "type": "function",
      "name": "_handle_error",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "AnthropicProvider._handle_error(status_code, resp_body) 方法",
      "tags": [
        "AnthropicProvider",
        "_handle_error"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AnthropicProvider.chat",
      "type": "function",
      "name": "chat",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "AnthropicProvider.chat(request) 异步方法",
      "tags": [
        "AnthropicProvider",
        "chat"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AnthropicProvider._chat_impl",
      "type": "function",
      "name": "_chat_impl",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "AnthropicProvider._chat_impl(request) 异步方法",
      "tags": [
        "AnthropicProvider",
        "_chat_impl"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AnthropicProvider.chat_stream",
      "type": "function",
      "name": "chat_stream",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "AnthropicProvider.chat_stream(request) 异步方法",
      "tags": [
        "AnthropicProvider",
        "chat_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AnthropicProvider._open_stream",
      "type": "function",
      "name": "_open_stream",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "AnthropicProvider._open_stream(request) 异步方法",
      "tags": [
        "AnthropicProvider",
        "_open_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AnthropicProvider._iterate_stream",
      "type": "function",
      "name": "_iterate_stream",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "AnthropicProvider._iterate_stream(response, request) 异步方法",
      "tags": [
        "AnthropicProvider",
        "_iterate_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AnthropicProvider.get_model_info",
      "type": "function",
      "name": "get_model_info",
      "filePath": "src/agentkit/llm/providers/anthropic.py",
      "layer": "utility",
      "summary": "AnthropicProvider.get_model_info() 方法",
      "tags": [
        "AnthropicProvider",
        "get_model_info"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:DoubaoProvider",
      "type": "class",
      "name": "DoubaoProvider",
      "filePath": "src/agentkit/llm/providers/doubao.py",
      "layer": "utility",
      "summary": "字节豆包 Provider",
      "tags": [
        "DoubaoProvider"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DoubaoProvider.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/providers/doubao.py",
      "layer": "utility",
      "summary": "DoubaoProvider.__init__(api_key, base_url, default_model) 方法",
      "tags": [
        "DoubaoProvider",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DoubaoProvider.chat",
      "type": "function",
      "name": "chat",
      "filePath": "src/agentkit/llm/providers/doubao.py",
      "layer": "utility",
      "summary": "DoubaoProvider.chat(request) 异步方法",
      "tags": [
        "DoubaoProvider",
        "chat"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:_GeminiStreamContext",
      "type": "class",
      "name": "_GeminiStreamContext",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "Wraps an httpx streaming response context manager for use with retry/circuit breaker.",
      "tags": [
        "_GeminiStreamContext"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_GeminiStreamContext.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "_GeminiStreamContext.__init__(response_ctx, response) 方法",
      "tags": [
        "_GeminiStreamContext",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_GeminiStreamContext.__aenter__",
      "type": "function",
      "name": "__aenter__",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "_GeminiStreamContext.__aenter__() 异步方法",
      "tags": [
        "_GeminiStreamContext",
        "__aenter__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_GeminiStreamContext.__aexit__",
      "type": "function",
      "name": "__aexit__",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "_GeminiStreamContext.__aexit__(exc_type, exc_val, exc_tb) 异步方法",
      "tags": [
        "_GeminiStreamContext",
        "__aexit__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:GeminiProvider",
      "type": "class",
      "name": "GeminiProvider",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "Google Gemini API 原生 Provider",
      "tags": [
        "GeminiProvider"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:GeminiProvider.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "GeminiProvider.__init__(api_key, model, max_output_tokens, base_url, timeout, safety_settings, retry_config, circuit_breaker_config, max_connections, max_keepalive_connections, keepalive_expiry) 方法",
      "tags": [
        "GeminiProvider",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GeminiProvider._get_client",
      "type": "function",
      "name": "_get_client",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "GeminiProvider._get_client() 方法",
      "tags": [
        "GeminiProvider",
        "_get_client"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GeminiProvider.close",
      "type": "function",
      "name": "close",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "GeminiProvider.close() 异步方法",
      "tags": [
        "GeminiProvider",
        "close"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GeminiProvider._convert_messages",
      "type": "function",
      "name": "_convert_messages",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "GeminiProvider._convert_messages(messages) 方法",
      "tags": [
        "GeminiProvider",
        "_convert_messages"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GeminiProvider._convert_tools",
      "type": "function",
      "name": "_convert_tools",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "GeminiProvider._convert_tools(tools) 方法",
      "tags": [
        "GeminiProvider",
        "_convert_tools"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GeminiProvider._convert_tool_choice",
      "type": "function",
      "name": "_convert_tool_choice",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "GeminiProvider._convert_tool_choice(tool_choice) 方法",
      "tags": [
        "GeminiProvider",
        "_convert_tool_choice"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GeminiProvider._parse_response",
      "type": "function",
      "name": "_parse_response",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "GeminiProvider._parse_response(data, model) 方法",
      "tags": [
        "GeminiProvider",
        "_parse_response"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GeminiProvider._handle_error",
      "type": "function",
      "name": "_handle_error",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "GeminiProvider._handle_error(status_code, resp_body) 方法",
      "tags": [
        "GeminiProvider",
        "_handle_error"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GeminiProvider.chat",
      "type": "function",
      "name": "chat",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "GeminiProvider.chat(request) 异步方法",
      "tags": [
        "GeminiProvider",
        "chat"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GeminiProvider._chat_impl",
      "type": "function",
      "name": "_chat_impl",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "GeminiProvider._chat_impl(request) 异步方法",
      "tags": [
        "GeminiProvider",
        "_chat_impl"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GeminiProvider.chat_stream",
      "type": "function",
      "name": "chat_stream",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "GeminiProvider.chat_stream(request) 异步方法",
      "tags": [
        "GeminiProvider",
        "chat_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GeminiProvider._open_stream",
      "type": "function",
      "name": "_open_stream",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "GeminiProvider._open_stream(request) 异步方法",
      "tags": [
        "GeminiProvider",
        "_open_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GeminiProvider._iterate_stream",
      "type": "function",
      "name": "_iterate_stream",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "GeminiProvider._iterate_stream(response, request) 异步方法",
      "tags": [
        "GeminiProvider",
        "_iterate_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GeminiProvider.get_model_info",
      "type": "function",
      "name": "get_model_info",
      "filePath": "src/agentkit/llm/providers/gemini.py",
      "layer": "utility",
      "summary": "GeminiProvider.get_model_info() 方法",
      "tags": [
        "GeminiProvider",
        "get_model_info"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:_StreamContext",
      "type": "class",
      "name": "_StreamContext",
      "filePath": "src/agentkit/llm/providers/openai.py",
      "layer": "utility",
      "summary": "Wraps an httpx streaming response context manager for use with retry/circuit breaker.",
      "tags": [
        "_StreamContext"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_StreamContext.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/providers/openai.py",
      "layer": "utility",
      "summary": "_StreamContext.__init__(response_ctx, response) 方法",
      "tags": [
        "_StreamContext",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_StreamContext.__aenter__",
      "type": "function",
      "name": "__aenter__",
      "filePath": "src/agentkit/llm/providers/openai.py",
      "layer": "utility",
      "summary": "_StreamContext.__aenter__() 异步方法",
      "tags": [
        "_StreamContext",
        "__aenter__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_StreamContext.__aexit__",
      "type": "function",
      "name": "__aexit__",
      "filePath": "src/agentkit/llm/providers/openai.py",
      "layer": "utility",
      "summary": "_StreamContext.__aexit__(exc_type, exc_val, exc_tb) 异步方法",
      "tags": [
        "_StreamContext",
        "__aexit__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:OpenAICompatibleProvider",
      "type": "class",
      "name": "OpenAICompatibleProvider",
      "filePath": "src/agentkit/llm/providers/openai.py",
      "layer": "utility",
      "summary": "OpenAI 兼容 API Provider",
      "tags": [
        "OpenAICompatibleProvider"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:OpenAICompatibleProvider.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/providers/openai.py",
      "layer": "utility",
      "summary": "OpenAICompatibleProvider.__init__(api_key, base_url, default_model, retry_config, circuit_breaker_config, max_connections, max_keepalive_connections, keepalive_expiry) 方法",
      "tags": [
        "OpenAICompatibleProvider",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OpenAICompatibleProvider.close",
      "type": "function",
      "name": "close",
      "filePath": "src/agentkit/llm/providers/openai.py",
      "layer": "utility",
      "summary": "OpenAICompatibleProvider.close() 异步方法",
      "tags": [
        "OpenAICompatibleProvider",
        "close"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OpenAICompatibleProvider.chat",
      "type": "function",
      "name": "chat",
      "filePath": "src/agentkit/llm/providers/openai.py",
      "layer": "utility",
      "summary": "OpenAICompatibleProvider.chat(request) 异步方法",
      "tags": [
        "OpenAICompatibleProvider",
        "chat"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OpenAICompatibleProvider._chat_impl",
      "type": "function",
      "name": "_chat_impl",
      "filePath": "src/agentkit/llm/providers/openai.py",
      "layer": "utility",
      "summary": "OpenAICompatibleProvider._chat_impl(request) 异步方法",
      "tags": [
        "OpenAICompatibleProvider",
        "_chat_impl"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OpenAICompatibleProvider.chat_stream",
      "type": "function",
      "name": "chat_stream",
      "filePath": "src/agentkit/llm/providers/openai.py",
      "layer": "utility",
      "summary": "OpenAICompatibleProvider.chat_stream(request) 异步方法",
      "tags": [
        "OpenAICompatibleProvider",
        "chat_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OpenAICompatibleProvider._open_stream",
      "type": "function",
      "name": "_open_stream",
      "filePath": "src/agentkit/llm/providers/openai.py",
      "layer": "utility",
      "summary": "OpenAICompatibleProvider._open_stream(request) 异步方法",
      "tags": [
        "OpenAICompatibleProvider",
        "_open_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OpenAICompatibleProvider._iterate_stream",
      "type": "function",
      "name": "_iterate_stream",
      "filePath": "src/agentkit/llm/providers/openai.py",
      "layer": "utility",
      "summary": "OpenAICompatibleProvider._iterate_stream(response, request) 异步方法",
      "tags": [
        "OpenAICompatibleProvider",
        "_iterate_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:UsageTracker",
      "type": "class",
      "name": "UsageTracker",
      "filePath": "src/agentkit/llm/providers/tracker.py",
      "layer": "utility",
      "summary": "使用量追踪器 — 委托给可插拔的 UsageStore",
      "tags": [
        "UsageTracker"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:UsageTracker.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/providers/tracker.py",
      "layer": "utility",
      "summary": "UsageTracker.__init__(store) 方法",
      "tags": [
        "UsageTracker",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:UsageTracker.record",
      "type": "function",
      "name": "record",
      "filePath": "src/agentkit/llm/providers/tracker.py",
      "layer": "utility",
      "summary": "UsageTracker.record(agent_name, model, usage, cost, latency_ms) 方法",
      "tags": [
        "UsageTracker",
        "record"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:UsageTracker.get_usage",
      "type": "function",
      "name": "get_usage",
      "filePath": "src/agentkit/llm/providers/tracker.py",
      "layer": "utility",
      "summary": "UsageTracker.get_usage(agent_name, start_time, end_time) 方法",
      "tags": [
        "UsageTracker",
        "get_usage"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:UsageRecord",
      "type": "class",
      "name": "UsageRecord",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "使用量记录",
      "tags": [
        "UsageRecord"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:UsageRecord.__post_init__",
      "type": "function",
      "name": "__post_init__",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "UsageRecord.__post_init__() 方法",
      "tags": [
        "UsageRecord",
        "__post_init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:UsageBucket",
      "type": "class",
      "name": "UsageBucket",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "Aggregated usage for an agent+model pair on a given date.",
      "tags": [
        "UsageBucket"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:UsageSummary",
      "type": "class",
      "name": "UsageSummary",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "使用量汇总",
      "tags": [
        "UsageSummary"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:UsageStore",
      "type": "class",
      "name": "UsageStore",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "Persistent usage store interface.",
      "tags": [
        "UsageStore"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:UsageStore.record",
      "type": "function",
      "name": "record",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "UsageStore.record(agent_name, model, usage, cost, latency_ms) 方法",
      "tags": [
        "UsageStore",
        "record"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:UsageStore.get_usage",
      "type": "function",
      "name": "get_usage",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "UsageStore.get_usage(agent_name, start_time, end_time) 方法",
      "tags": [
        "UsageStore",
        "get_usage"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:InMemoryUsageStore",
      "type": "class",
      "name": "InMemoryUsageStore",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "In-memory usage store (drop-in replacement for old UsageTracker).",
      "tags": [
        "InMemoryUsageStore"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryUsageStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "InMemoryUsageStore.__init__() 方法",
      "tags": [
        "InMemoryUsageStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryUsageStore.record",
      "type": "function",
      "name": "record",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "InMemoryUsageStore.record(agent_name, model, usage, cost, latency_ms) 方法",
      "tags": [
        "InMemoryUsageStore",
        "record"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryUsageStore.get_usage",
      "type": "function",
      "name": "get_usage",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "InMemoryUsageStore.get_usage(agent_name, start_time, end_time) 方法",
      "tags": [
        "InMemoryUsageStore",
        "get_usage"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RedisUsageStore",
      "type": "class",
      "name": "RedisUsageStore",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "Redis-backed usage store using Hash per date for O(1) writes.",
      "tags": [
        "RedisUsageStore"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:RedisUsageStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "RedisUsageStore.__init__(redis_url) 方法",
      "tags": [
        "RedisUsageStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisUsageStore._get_redis",
      "type": "function",
      "name": "_get_redis",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "RedisUsageStore._get_redis() 异步方法",
      "tags": [
        "RedisUsageStore",
        "_get_redis"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisUsageStore._get_sync_redis",
      "type": "function",
      "name": "_get_sync_redis",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "RedisUsageStore._get_sync_redis() 方法",
      "tags": [
        "RedisUsageStore",
        "_get_sync_redis"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisUsageStore.aclose",
      "type": "function",
      "name": "aclose",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "RedisUsageStore.aclose() 异步方法",
      "tags": [
        "RedisUsageStore",
        "aclose"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisUsageStore._degrade_to_fallback",
      "type": "function",
      "name": "_degrade_to_fallback",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "RedisUsageStore._degrade_to_fallback() 方法",
      "tags": [
        "RedisUsageStore",
        "_degrade_to_fallback"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisUsageStore._today_key",
      "type": "function",
      "name": "_today_key",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "RedisUsageStore._today_key() 方法",
      "tags": [
        "RedisUsageStore",
        "_today_key"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisUsageStore.record",
      "type": "function",
      "name": "record",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "RedisUsageStore.record(agent_name, model, usage, cost, latency_ms) 方法",
      "tags": [
        "RedisUsageStore",
        "record"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisUsageStore.get_usage",
      "type": "function",
      "name": "get_usage",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "RedisUsageStore.get_usage(agent_name, start_time, end_time) 方法",
      "tags": [
        "RedisUsageStore",
        "get_usage"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:WenxinProvider",
      "type": "class",
      "name": "WenxinProvider",
      "filePath": "src/agentkit/llm/providers/wenxin.py",
      "layer": "utility",
      "summary": "百度文心 ERNIE Provider",
      "tags": [
        "WenxinProvider"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WenxinProvider.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/providers/wenxin.py",
      "layer": "utility",
      "summary": "WenxinProvider.__init__(api_key, access_key, secret_key, base_url, default_model) 方法",
      "tags": [
        "WenxinProvider",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WenxinProvider.chat",
      "type": "function",
      "name": "chat",
      "filePath": "src/agentkit/llm/providers/wenxin.py",
      "layer": "utility",
      "summary": "WenxinProvider.chat(request) 异步方法",
      "tags": [
        "WenxinProvider",
        "chat"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WenxinProvider._ensure_access_token",
      "type": "function",
      "name": "_ensure_access_token",
      "filePath": "src/agentkit/llm/providers/wenxin.py",
      "layer": "utility",
      "summary": "WenxinProvider._ensure_access_token() 异步方法",
      "tags": [
        "WenxinProvider",
        "_ensure_access_token"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:YuanbaoProvider",
      "type": "class",
      "name": "YuanbaoProvider",
      "filePath": "src/agentkit/llm/providers/yuanbao.py",
      "layer": "utility",
      "summary": "腾讯混元/元宝 Provider",
      "tags": [
        "YuanbaoProvider"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:YuanbaoProvider.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/providers/yuanbao.py",
      "layer": "utility",
      "summary": "YuanbaoProvider.__init__(api_key, base_url, default_model, enable_enhancement) 方法",
      "tags": [
        "YuanbaoProvider",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:YuanbaoProvider.chat",
      "type": "function",
      "name": "chat",
      "filePath": "src/agentkit/llm/providers/yuanbao.py",
      "layer": "utility",
      "summary": "YuanbaoProvider.chat(request) 异步方法",
      "tags": [
        "YuanbaoProvider",
        "chat"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RetryConfig",
      "type": "class",
      "name": "RetryConfig",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "Retry policy configuration",
      "tags": [
        "RetryConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CircuitState",
      "type": "class",
      "name": "CircuitState",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "Circuit breaker states",
      "tags": [
        "CircuitState"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CircuitBreakerConfig",
      "type": "class",
      "name": "CircuitBreakerConfig",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "Circuit breaker configuration",
      "tags": [
        "CircuitBreakerConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CircuitOpenError",
      "type": "class",
      "name": "CircuitOpenError",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "Raised when the circuit breaker is open",
      "tags": [
        "CircuitOpenError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CircuitOpenError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "CircuitOpenError.__init__(provider) 方法",
      "tags": [
        "CircuitOpenError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RetryPolicy",
      "type": "class",
      "name": "RetryPolicy",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "Retry with exponential backoff for transient failures",
      "tags": [
        "RetryPolicy"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RetryPolicy.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "RetryPolicy.__init__(config) 方法",
      "tags": [
        "RetryPolicy",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RetryPolicy.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "RetryPolicy.execute(fn) 异步方法",
      "tags": [
        "RetryPolicy",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CircuitBreaker",
      "type": "class",
      "name": "CircuitBreaker",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "Circuit breaker to prevent cascading failures",
      "tags": [
        "CircuitBreaker"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:CircuitBreaker.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "CircuitBreaker.__init__(config, provider) 方法",
      "tags": [
        "CircuitBreaker",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CircuitBreaker.state",
      "type": "function",
      "name": "state",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "CircuitBreaker.state() 方法",
      "tags": [
        "CircuitBreaker",
        "state"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CircuitBreaker._on_success",
      "type": "function",
      "name": "_on_success",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "CircuitBreaker._on_success() 方法",
      "tags": [
        "CircuitBreaker",
        "_on_success"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CircuitBreaker._on_failure",
      "type": "function",
      "name": "_on_failure",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "CircuitBreaker._on_failure() 方法",
      "tags": [
        "CircuitBreaker",
        "_on_failure"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CircuitBreaker.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "CircuitBreaker.execute(fn) 异步方法",
      "tags": [
        "CircuitBreaker",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Bid",
      "type": "class",
      "name": "Bid",
      "filePath": "src/agentkit/marketplace/auction.py",
      "layer": "unknown",
      "summary": "Agent 竞价信息",
      "tags": [
        "Bid"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Bid.__post_init__",
      "type": "function",
      "name": "__post_init__",
      "filePath": "src/agentkit/marketplace/auction.py",
      "layer": "unknown",
      "summary": "Bid.__post_init__() 方法",
      "tags": [
        "Bid",
        "__post_init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AuctionResult",
      "type": "class",
      "name": "AuctionResult",
      "filePath": "src/agentkit/marketplace/auction.py",
      "layer": "unknown",
      "summary": "拍卖结果",
      "tags": [
        "AuctionResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AuctionHouse",
      "type": "class",
      "name": "AuctionHouse",
      "filePath": "src/agentkit/marketplace/auction.py",
      "layer": "unknown",
      "summary": "Auction-based agent selection mechanism.",
      "tags": [
        "AuctionHouse"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:AuctionHouse.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/marketplace/auction.py",
      "layer": "unknown",
      "summary": "AuctionHouse.__init__(wealth_tracker) 方法",
      "tags": [
        "AuctionHouse",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AuctionHouse.run_auction",
      "type": "function",
      "name": "run_auction",
      "filePath": "src/agentkit/marketplace/auction.py",
      "layer": "unknown",
      "summary": "AuctionHouse.run_auction(task_description, bidders) 异步方法",
      "tags": [
        "AuctionHouse",
        "run_auction"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AuctionHouse.score_bid",
      "type": "function",
      "name": "score_bid",
      "filePath": "src/agentkit/marketplace/auction.py",
      "layer": "unknown",
      "summary": "AuctionHouse.score_bid(bid) 方法",
      "tags": [
        "AuctionHouse",
        "score_bid"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AuctionHouse.filter_by_capabilities",
      "type": "function",
      "name": "filter_by_capabilities",
      "filePath": "src/agentkit/marketplace/auction.py",
      "layer": "unknown",
      "summary": "AuctionHouse.filter_by_capabilities(bidders, required_capabilities) 方法",
      "tags": [
        "AuctionHouse",
        "filter_by_capabilities"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AuctionHouse.run_vickrey_auction",
      "type": "function",
      "name": "run_vickrey_auction",
      "filePath": "src/agentkit/marketplace/auction.py",
      "layer": "unknown",
      "summary": "AuctionHouse.run_vickrey_auction(task_description, bidders, required_capabilities) 异步方法",
      "tags": [
        "AuctionHouse",
        "run_vickrey_auction"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:WealthTracker",
      "type": "class",
      "name": "WealthTracker",
      "filePath": "src/agentkit/marketplace/wealth.py",
      "layer": "unknown",
      "summary": "Track agent wealth for auction mechanism.",
      "tags": [
        "WealthTracker"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:WealthTracker.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/marketplace/wealth.py",
      "layer": "unknown",
      "summary": "WealthTracker.__init__(initial_wealth) 方法",
      "tags": [
        "WealthTracker",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WealthTracker.get_wealth",
      "type": "function",
      "name": "get_wealth",
      "filePath": "src/agentkit/marketplace/wealth.py",
      "layer": "unknown",
      "summary": "WealthTracker.get_wealth(agent_name) 方法",
      "tags": [
        "WealthTracker",
        "get_wealth"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WealthTracker.reward",
      "type": "function",
      "name": "reward",
      "filePath": "src/agentkit/marketplace/wealth.py",
      "layer": "unknown",
      "summary": "WealthTracker.reward(agent_name, amount) 方法",
      "tags": [
        "WealthTracker",
        "reward"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WealthTracker.penalize",
      "type": "function",
      "name": "penalize",
      "filePath": "src/agentkit/marketplace/wealth.py",
      "layer": "unknown",
      "summary": "WealthTracker.penalize(agent_name, amount) 方法",
      "tags": [
        "WealthTracker",
        "penalize"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WealthTracker.is_bankrupt",
      "type": "function",
      "name": "is_bankrupt",
      "filePath": "src/agentkit/marketplace/wealth.py",
      "layer": "unknown",
      "summary": "WealthTracker.is_bankrupt(agent_name) 方法",
      "tags": [
        "WealthTracker",
        "is_bankrupt"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WealthTracker.reset",
      "type": "function",
      "name": "reset",
      "filePath": "src/agentkit/marketplace/wealth.py",
      "layer": "unknown",
      "summary": "WealthTracker.reset(agent_name) 方法",
      "tags": [
        "WealthTracker",
        "reset"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WealthTracker.get_rankings",
      "type": "function",
      "name": "get_rankings",
      "filePath": "src/agentkit/marketplace/wealth.py",
      "layer": "unknown",
      "summary": "WealthTracker.get_rankings() 方法",
      "tags": [
        "WealthTracker",
        "get_rankings"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WealthTracker.get_wealth_factor",
      "type": "function",
      "name": "get_wealth_factor",
      "filePath": "src/agentkit/marketplace/wealth.py",
      "layer": "unknown",
      "summary": "WealthTracker.get_wealth_factor(agent_name) 方法",
      "tags": [
        "WealthTracker",
        "get_wealth_factor"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MCPClient",
      "type": "class",
      "name": "MCPClient",
      "filePath": "src/agentkit/mcp/client.py",
      "layer": "utility",
      "summary": "MCP Client - 连接外部 MCP Server 并调用工具",
      "tags": [
        "MCPClient"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:MCPClient.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/mcp/client.py",
      "layer": "utility",
      "summary": "MCPClient.__init__(server_url, timeout, transport) 方法",
      "tags": [
        "MCPClient",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPClient.from_transport",
      "type": "function",
      "name": "from_transport",
      "filePath": "src/agentkit/mcp/client.py",
      "layer": "utility",
      "summary": "MCPClient.from_transport(cls, transport) 方法",
      "tags": [
        "MCPClient",
        "from_transport"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPClient.list_tools",
      "type": "function",
      "name": "list_tools",
      "filePath": "src/agentkit/mcp/client.py",
      "layer": "utility",
      "summary": "MCPClient.list_tools() 异步方法",
      "tags": [
        "MCPClient",
        "list_tools"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPClient.call_tool",
      "type": "function",
      "name": "call_tool",
      "filePath": "src/agentkit/mcp/client.py",
      "layer": "utility",
      "summary": "MCPClient.call_tool(tool_name, arguments) 异步方法",
      "tags": [
        "MCPClient",
        "call_tool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPClient.as_tool",
      "type": "function",
      "name": "as_tool",
      "filePath": "src/agentkit/mcp/client.py",
      "layer": "utility",
      "summary": "MCPClient.as_tool(tool_name, description) 方法",
      "tags": [
        "MCPClient",
        "as_tool"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MCPTool",
      "type": "class",
      "name": "MCPTool",
      "filePath": "src/agentkit/mcp/client.py",
      "layer": "utility",
      "summary": "MCP 工具 - 通过 MCP Client 调用远程工具",
      "tags": [
        "MCPTool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/mcp/client.py",
      "layer": "utility",
      "summary": "MCPTool.__init__(name, description, client, input_schema, output_schema, version, tags) 方法",
      "tags": [
        "MCPTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/mcp/client.py",
      "layer": "utility",
      "summary": "MCPTool.execute() 异步方法",
      "tags": [
        "MCPTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MCPManager",
      "type": "class",
      "name": "MCPManager",
      "filePath": "src/agentkit/mcp/manager.py",
      "layer": "utility",
      "summary": "管理 MCP Server 连接和工具发现",
      "tags": [
        "MCPManager"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:MCPManager.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/mcp/manager.py",
      "layer": "utility",
      "summary": "MCPManager.__init__(configs, tool_registry) 方法",
      "tags": [
        "MCPManager",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPManager.start_all",
      "type": "function",
      "name": "start_all",
      "filePath": "src/agentkit/mcp/manager.py",
      "layer": "utility",
      "summary": "MCPManager.start_all() 异步方法",
      "tags": [
        "MCPManager",
        "start_all"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPManager._start_server_safe",
      "type": "function",
      "name": "_start_server_safe",
      "filePath": "src/agentkit/mcp/manager.py",
      "layer": "utility",
      "summary": "MCPManager._start_server_safe(name, config) 异步方法",
      "tags": [
        "MCPManager",
        "_start_server_safe"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPManager._start_server",
      "type": "function",
      "name": "_start_server",
      "filePath": "src/agentkit/mcp/manager.py",
      "layer": "utility",
      "summary": "MCPManager._start_server(name, config) 异步方法",
      "tags": [
        "MCPManager",
        "_start_server"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPManager.stop_all",
      "type": "function",
      "name": "stop_all",
      "filePath": "src/agentkit/mcp/manager.py",
      "layer": "utility",
      "summary": "MCPManager.stop_all() 异步方法",
      "tags": [
        "MCPManager",
        "stop_all"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPManager.is_available",
      "type": "function",
      "name": "is_available",
      "filePath": "src/agentkit/mcp/manager.py",
      "layer": "utility",
      "summary": "MCPManager.is_available(server_name) 方法",
      "tags": [
        "MCPManager",
        "is_available"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPManager.get_server_tools",
      "type": "function",
      "name": "get_server_tools",
      "filePath": "src/agentkit/mcp/manager.py",
      "layer": "utility",
      "summary": "MCPManager.get_server_tools(server_name) 方法",
      "tags": [
        "MCPManager",
        "get_server_tools"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPManager.list_all_tools",
      "type": "function",
      "name": "list_all_tools",
      "filePath": "src/agentkit/mcp/manager.py",
      "layer": "utility",
      "summary": "MCPManager.list_all_tools() 方法",
      "tags": [
        "MCPManager",
        "list_all_tools"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPManager.get_tool_registry",
      "type": "function",
      "name": "get_tool_registry",
      "filePath": "src/agentkit/mcp/manager.py",
      "layer": "utility",
      "summary": "MCPManager.get_tool_registry() 方法",
      "tags": [
        "MCPManager",
        "get_tool_registry"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MCPServer",
      "type": "class",
      "name": "MCPServer",
      "filePath": "src/agentkit/mcp/server.py",
      "layer": "utility",
      "summary": "MCP Server - 暴露 Agent 能力为 MCP 工具",
      "tags": [
        "MCPServer"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:MCPServer.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/mcp/server.py",
      "layer": "utility",
      "summary": "MCPServer.__init__(tool_registry, host, port) 方法",
      "tags": [
        "MCPServer",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPServer._create_app",
      "type": "function",
      "name": "_create_app",
      "filePath": "src/agentkit/mcp/server.py",
      "layer": "utility",
      "summary": "MCPServer._create_app() 方法",
      "tags": [
        "MCPServer",
        "_create_app"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPServer.start",
      "type": "function",
      "name": "start",
      "filePath": "src/agentkit/mcp/server.py",
      "layer": "utility",
      "summary": "MCPServer.start() 异步方法",
      "tags": [
        "MCPServer",
        "start"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPServer.get_app",
      "type": "function",
      "name": "get_app",
      "filePath": "src/agentkit/mcp/server.py",
      "layer": "utility",
      "summary": "MCPServer.get_app() 方法",
      "tags": [
        "MCPServer",
        "get_app"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TransportError",
      "type": "class",
      "name": "TransportError",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "传输层错误",
      "tags": [
        "TransportError"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TransportError.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "TransportError.__init__(message, cause) 方法",
      "tags": [
        "TransportError",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Transport",
      "type": "class",
      "name": "Transport",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "传输层抽象基类",
      "tags": [
        "Transport"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:Transport.connect",
      "type": "function",
      "name": "connect",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "Transport.connect() 异步方法",
      "tags": [
        "Transport",
        "connect"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Transport.disconnect",
      "type": "function",
      "name": "disconnect",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "Transport.disconnect() 异步方法",
      "tags": [
        "Transport",
        "disconnect"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Transport.send_request",
      "type": "function",
      "name": "send_request",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "Transport.send_request(method, params) 异步方法",
      "tags": [
        "Transport",
        "send_request"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Transport.receive_response",
      "type": "function",
      "name": "receive_response",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "Transport.receive_response() 异步方法",
      "tags": [
        "Transport",
        "receive_response"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:HTTPTransport",
      "type": "class",
      "name": "HTTPTransport",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "Streamable HTTP 传输",
      "tags": [
        "HTTPTransport"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:HTTPTransport.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "HTTPTransport.__init__(endpoint, headers, timeout) 方法",
      "tags": [
        "HTTPTransport",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HTTPTransport.is_connected",
      "type": "function",
      "name": "is_connected",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "HTTPTransport.is_connected() 方法",
      "tags": [
        "HTTPTransport",
        "is_connected"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HTTPTransport.connect",
      "type": "function",
      "name": "connect",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "HTTPTransport.connect() 异步方法",
      "tags": [
        "HTTPTransport",
        "connect"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HTTPTransport.disconnect",
      "type": "function",
      "name": "disconnect",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "HTTPTransport.disconnect() 异步方法",
      "tags": [
        "HTTPTransport",
        "disconnect"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HTTPTransport._next_request_id",
      "type": "function",
      "name": "_next_request_id",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "HTTPTransport._next_request_id() 方法",
      "tags": [
        "HTTPTransport",
        "_next_request_id"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HTTPTransport.send_request",
      "type": "function",
      "name": "send_request",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "HTTPTransport.send_request(method, params) 异步方法",
      "tags": [
        "HTTPTransport",
        "send_request"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HTTPTransport.receive_response",
      "type": "function",
      "name": "receive_response",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "HTTPTransport.receive_response() 异步方法",
      "tags": [
        "HTTPTransport",
        "receive_response"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SSETransport",
      "type": "class",
      "name": "SSETransport",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "Server-Sent Events 传输",
      "tags": [
        "SSETransport"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:SSETransport.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "SSETransport.__init__(endpoint, sse_path, message_path, headers, timeout) 方法",
      "tags": [
        "SSETransport",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SSETransport.is_connected",
      "type": "function",
      "name": "is_connected",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "SSETransport.is_connected() 方法",
      "tags": [
        "SSETransport",
        "is_connected"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SSETransport.connect",
      "type": "function",
      "name": "connect",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "SSETransport.connect() 异步方法",
      "tags": [
        "SSETransport",
        "connect"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SSETransport.disconnect",
      "type": "function",
      "name": "disconnect",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "SSETransport.disconnect() 异步方法",
      "tags": [
        "SSETransport",
        "disconnect"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SSETransport._listen_sse",
      "type": "function",
      "name": "_listen_sse",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "SSETransport._listen_sse() 异步方法",
      "tags": [
        "SSETransport",
        "_listen_sse"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SSETransport._next_request_id",
      "type": "function",
      "name": "_next_request_id",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "SSETransport._next_request_id() 方法",
      "tags": [
        "SSETransport",
        "_next_request_id"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SSETransport.send_request",
      "type": "function",
      "name": "send_request",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "SSETransport.send_request(method, params) 异步方法",
      "tags": [
        "SSETransport",
        "send_request"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SSETransport.receive_response",
      "type": "function",
      "name": "receive_response",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "SSETransport.receive_response() 异步方法",
      "tags": [
        "SSETransport",
        "receive_response"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:StdioTransport",
      "type": "class",
      "name": "StdioTransport",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "Stdio 传输",
      "tags": [
        "StdioTransport"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:StdioTransport.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "StdioTransport.__init__(command, args, env, timeout) 方法",
      "tags": [
        "StdioTransport",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StdioTransport.is_connected",
      "type": "function",
      "name": "is_connected",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "StdioTransport.is_connected() 方法",
      "tags": [
        "StdioTransport",
        "is_connected"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StdioTransport._next_request_id",
      "type": "function",
      "name": "_next_request_id",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "StdioTransport._next_request_id() 方法",
      "tags": [
        "StdioTransport",
        "_next_request_id"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StdioTransport.connect",
      "type": "function",
      "name": "connect",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "StdioTransport.connect() 异步方法",
      "tags": [
        "StdioTransport",
        "connect"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StdioTransport.disconnect",
      "type": "function",
      "name": "disconnect",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "StdioTransport.disconnect() 异步方法",
      "tags": [
        "StdioTransport",
        "disconnect"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StdioTransport._cleanup",
      "type": "function",
      "name": "_cleanup",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "StdioTransport._cleanup() 异步方法",
      "tags": [
        "StdioTransport",
        "_cleanup"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StdioTransport.send_request",
      "type": "function",
      "name": "send_request",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "StdioTransport.send_request(method, params) 异步方法",
      "tags": [
        "StdioTransport",
        "send_request"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StdioTransport._send_request_internal",
      "type": "function",
      "name": "_send_request_internal",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "StdioTransport._send_request_internal(method, params) 异步方法",
      "tags": [
        "StdioTransport",
        "_send_request_internal"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StdioTransport._send_notification",
      "type": "function",
      "name": "_send_notification",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "StdioTransport._send_notification(method, params) 异步方法",
      "tags": [
        "StdioTransport",
        "_send_notification"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StdioTransport._write_message",
      "type": "function",
      "name": "_write_message",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "StdioTransport._write_message(message) 异步方法",
      "tags": [
        "StdioTransport",
        "_write_message"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StdioTransport.receive_response",
      "type": "function",
      "name": "receive_response",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "StdioTransport.receive_response() 异步方法",
      "tags": [
        "StdioTransport",
        "receive_response"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StdioTransport._read_stdout",
      "type": "function",
      "name": "_read_stdout",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "StdioTransport._read_stdout() 异步方法",
      "tags": [
        "StdioTransport",
        "_read_stdout"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StdioTransport._read_stderr",
      "type": "function",
      "name": "_read_stderr",
      "filePath": "src/agentkit/mcp/transport.py",
      "layer": "utility",
      "summary": "StdioTransport._read_stderr() 异步方法",
      "tags": [
        "StdioTransport",
        "_read_stderr"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:KBAdapter",
      "type": "class",
      "name": "KBAdapter",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "知识库适配器抽象基类",
      "tags": [
        "KBAdapter"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:KBAdapter.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter.__init__(source_id, source_name, source_type, timeout) 方法",
      "tags": [
        "KBAdapter",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter.source_id",
      "type": "function",
      "name": "source_id",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter.source_id() 方法",
      "tags": [
        "KBAdapter",
        "source_id"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter.source_name",
      "type": "function",
      "name": "source_name",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter.source_name() 方法",
      "tags": [
        "KBAdapter",
        "source_name"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter.source_type",
      "type": "function",
      "name": "source_type",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter.source_type() 方法",
      "tags": [
        "KBAdapter",
        "source_type"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter._get_client",
      "type": "function",
      "name": "_get_client",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter._get_client() 方法",
      "tags": [
        "KBAdapter",
        "_get_client"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter._make_client",
      "type": "function",
      "name": "_make_client",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter._make_client() 方法",
      "tags": [
        "KBAdapter",
        "_make_client"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter.ingest",
      "type": "function",
      "name": "ingest",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter.ingest(documents) 异步方法",
      "tags": [
        "KBAdapter",
        "ingest"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter._ingest_one",
      "type": "function",
      "name": "_ingest_one",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter._ingest_one(document) 异步方法",
      "tags": [
        "KBAdapter",
        "_ingest_one"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter.query",
      "type": "function",
      "name": "query",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter.query(text, top_k) 异步方法",
      "tags": [
        "KBAdapter",
        "query"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter.delete_by_id",
      "type": "function",
      "name": "delete_by_id",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter.delete_by_id(id) 异步方法",
      "tags": [
        "KBAdapter",
        "delete_by_id"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter.list_sources",
      "type": "function",
      "name": "list_sources",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter.list_sources() 异步方法",
      "tags": [
        "KBAdapter",
        "list_sources"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter.health_check() 异步方法",
      "tags": [
        "KBAdapter",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter.search",
      "type": "function",
      "name": "search",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter.search(query, top_k) 异步方法",
      "tags": [
        "KBAdapter",
        "search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter.get_document",
      "type": "function",
      "name": "get_document",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter.get_document(doc_id) 异步方法",
      "tags": [
        "KBAdapter",
        "get_document"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter.authenticate",
      "type": "function",
      "name": "authenticate",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter.authenticate() 异步方法",
      "tags": [
        "KBAdapter",
        "authenticate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter.close",
      "type": "function",
      "name": "close",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter.close() 异步方法",
      "tags": [
        "KBAdapter",
        "close"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter.__aenter__",
      "type": "function",
      "name": "__aenter__",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter.__aenter__() 异步方法",
      "tags": [
        "KBAdapter",
        "__aenter__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KBAdapter.__aexit__",
      "type": "function",
      "name": "__aexit__",
      "filePath": "src/agentkit/memory/adapters/base.py",
      "layer": "data",
      "summary": "KBAdapter.__aexit__() 异步方法",
      "tags": [
        "KBAdapter",
        "__aexit__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ConfluenceAdapter",
      "type": "class",
      "name": "ConfluenceAdapter",
      "filePath": "src/agentkit/memory/adapters/confluence.py",
      "layer": "data",
      "summary": "Confluence 知识库适配器",
      "tags": [
        "ConfluenceAdapter"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:ConfluenceAdapter.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/adapters/confluence.py",
      "layer": "data",
      "summary": "ConfluenceAdapter.__init__(base_url, username, api_token, space_keys, timeout) 方法",
      "tags": [
        "ConfluenceAdapter",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfluenceAdapter._make_client",
      "type": "function",
      "name": "_make_client",
      "filePath": "src/agentkit/memory/adapters/confluence.py",
      "layer": "data",
      "summary": "ConfluenceAdapter._make_client() 方法",
      "tags": [
        "ConfluenceAdapter",
        "_make_client"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfluenceAdapter.authenticate",
      "type": "function",
      "name": "authenticate",
      "filePath": "src/agentkit/memory/adapters/confluence.py",
      "layer": "data",
      "summary": "ConfluenceAdapter.authenticate() 异步方法",
      "tags": [
        "ConfluenceAdapter",
        "authenticate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfluenceAdapter.search",
      "type": "function",
      "name": "search",
      "filePath": "src/agentkit/memory/adapters/confluence.py",
      "layer": "data",
      "summary": "ConfluenceAdapter.search(query, top_k) 异步方法",
      "tags": [
        "ConfluenceAdapter",
        "search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfluenceAdapter.get_document",
      "type": "function",
      "name": "get_document",
      "filePath": "src/agentkit/memory/adapters/confluence.py",
      "layer": "data",
      "summary": "ConfluenceAdapter.get_document(doc_id) 异步方法",
      "tags": [
        "ConfluenceAdapter",
        "get_document"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfluenceAdapter.list_sources",
      "type": "function",
      "name": "list_sources",
      "filePath": "src/agentkit/memory/adapters/confluence.py",
      "layer": "data",
      "summary": "ConfluenceAdapter.list_sources() 异步方法",
      "tags": [
        "ConfluenceAdapter",
        "list_sources"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConfluenceAdapter.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/memory/adapters/confluence.py",
      "layer": "data",
      "summary": "ConfluenceAdapter.health_check() 异步方法",
      "tags": [
        "ConfluenceAdapter",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:FeishuKBAdapter",
      "type": "class",
      "name": "FeishuKBAdapter",
      "filePath": "src/agentkit/memory/adapters/feishu.py",
      "layer": "data",
      "summary": "飞书知识库适配器",
      "tags": [
        "FeishuKBAdapter"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:FeishuKBAdapter.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/adapters/feishu.py",
      "layer": "data",
      "summary": "FeishuKBAdapter.__init__(app_id, app_secret, base_url, space_ids, timeout) 方法",
      "tags": [
        "FeishuKBAdapter",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FeishuKBAdapter._make_client",
      "type": "function",
      "name": "_make_client",
      "filePath": "src/agentkit/memory/adapters/feishu.py",
      "layer": "data",
      "summary": "FeishuKBAdapter._make_client() 方法",
      "tags": [
        "FeishuKBAdapter",
        "_make_client"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FeishuKBAdapter._get_access_token",
      "type": "function",
      "name": "_get_access_token",
      "filePath": "src/agentkit/memory/adapters/feishu.py",
      "layer": "data",
      "summary": "FeishuKBAdapter._get_access_token() 异步方法",
      "tags": [
        "FeishuKBAdapter",
        "_get_access_token"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FeishuKBAdapter.authenticate",
      "type": "function",
      "name": "authenticate",
      "filePath": "src/agentkit/memory/adapters/feishu.py",
      "layer": "data",
      "summary": "FeishuKBAdapter.authenticate() 异步方法",
      "tags": [
        "FeishuKBAdapter",
        "authenticate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FeishuKBAdapter.search",
      "type": "function",
      "name": "search",
      "filePath": "src/agentkit/memory/adapters/feishu.py",
      "layer": "data",
      "summary": "FeishuKBAdapter.search(query, top_k) 异步方法",
      "tags": [
        "FeishuKBAdapter",
        "search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FeishuKBAdapter.get_document",
      "type": "function",
      "name": "get_document",
      "filePath": "src/agentkit/memory/adapters/feishu.py",
      "layer": "data",
      "summary": "FeishuKBAdapter.get_document(doc_id) 异步方法",
      "tags": [
        "FeishuKBAdapter",
        "get_document"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FeishuKBAdapter.list_sources",
      "type": "function",
      "name": "list_sources",
      "filePath": "src/agentkit/memory/adapters/feishu.py",
      "layer": "data",
      "summary": "FeishuKBAdapter.list_sources() 异步方法",
      "tags": [
        "FeishuKBAdapter",
        "list_sources"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FeishuKBAdapter.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/memory/adapters/feishu.py",
      "layer": "data",
      "summary": "FeishuKBAdapter.health_check() 异步方法",
      "tags": [
        "FeishuKBAdapter",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:GenericHTTPAdapter",
      "type": "class",
      "name": "GenericHTTPAdapter",
      "filePath": "src/agentkit/memory/adapters/generic_http.py",
      "layer": "data",
      "summary": "通用 HTTP 知识库适配器",
      "tags": [
        "GenericHTTPAdapter"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:GenericHTTPAdapter.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/adapters/generic_http.py",
      "layer": "data",
      "summary": "GenericHTTPAdapter.__init__(endpoint_url, auth_config, headers, source_id, source_name, timeout) 方法",
      "tags": [
        "GenericHTTPAdapter",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GenericHTTPAdapter._make_client",
      "type": "function",
      "name": "_make_client",
      "filePath": "src/agentkit/memory/adapters/generic_http.py",
      "layer": "data",
      "summary": "GenericHTTPAdapter._make_client() 方法",
      "tags": [
        "GenericHTTPAdapter",
        "_make_client"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GenericHTTPAdapter.search",
      "type": "function",
      "name": "search",
      "filePath": "src/agentkit/memory/adapters/generic_http.py",
      "layer": "data",
      "summary": "GenericHTTPAdapter.search(query, top_k) 异步方法",
      "tags": [
        "GenericHTTPAdapter",
        "search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GenericHTTPAdapter.ingest",
      "type": "function",
      "name": "ingest",
      "filePath": "src/agentkit/memory/adapters/generic_http.py",
      "layer": "data",
      "summary": "GenericHTTPAdapter.ingest(documents) 异步方法",
      "tags": [
        "GenericHTTPAdapter",
        "ingest"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GenericHTTPAdapter.delete_by_id",
      "type": "function",
      "name": "delete_by_id",
      "filePath": "src/agentkit/memory/adapters/generic_http.py",
      "layer": "data",
      "summary": "GenericHTTPAdapter.delete_by_id(id) 异步方法",
      "tags": [
        "GenericHTTPAdapter",
        "delete_by_id"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GenericHTTPAdapter.get_document",
      "type": "function",
      "name": "get_document",
      "filePath": "src/agentkit/memory/adapters/generic_http.py",
      "layer": "data",
      "summary": "GenericHTTPAdapter.get_document(doc_id) 异步方法",
      "tags": [
        "GenericHTTPAdapter",
        "get_document"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GenericHTTPAdapter.list_sources",
      "type": "function",
      "name": "list_sources",
      "filePath": "src/agentkit/memory/adapters/generic_http.py",
      "layer": "data",
      "summary": "GenericHTTPAdapter.list_sources() 异步方法",
      "tags": [
        "GenericHTTPAdapter",
        "list_sources"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GenericHTTPAdapter.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/memory/adapters/generic_http.py",
      "layer": "data",
      "summary": "GenericHTTPAdapter.health_check() 异步方法",
      "tags": [
        "GenericHTTPAdapter",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GenericHTTPAdapter.authenticate",
      "type": "function",
      "name": "authenticate",
      "filePath": "src/agentkit/memory/adapters/generic_http.py",
      "layer": "data",
      "summary": "GenericHTTPAdapter.authenticate() 异步方法",
      "tags": [
        "GenericHTTPAdapter",
        "authenticate"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MemoryItem",
      "type": "class",
      "name": "MemoryItem",
      "filePath": "src/agentkit/memory/base.py",
      "layer": "data",
      "summary": "记忆条目",
      "tags": [
        "MemoryItem"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryItem.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/memory/base.py",
      "layer": "data",
      "summary": "MemoryItem.to_dict() 方法",
      "tags": [
        "MemoryItem",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Memory",
      "type": "class",
      "name": "Memory",
      "filePath": "src/agentkit/memory/base.py",
      "layer": "data",
      "summary": "记忆抽象基类",
      "tags": [
        "Memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:Memory.store",
      "type": "function",
      "name": "store",
      "filePath": "src/agentkit/memory/base.py",
      "layer": "data",
      "summary": "Memory.store(key, value, metadata) 异步方法",
      "tags": [
        "Memory",
        "store"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Memory.retrieve",
      "type": "function",
      "name": "retrieve",
      "filePath": "src/agentkit/memory/base.py",
      "layer": "data",
      "summary": "Memory.retrieve(key) 异步方法",
      "tags": [
        "Memory",
        "retrieve"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Memory.search",
      "type": "function",
      "name": "search",
      "filePath": "src/agentkit/memory/base.py",
      "layer": "data",
      "summary": "Memory.search(query, top_k, filters) 异步方法",
      "tags": [
        "Memory",
        "search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Memory.delete",
      "type": "function",
      "name": "delete",
      "filePath": "src/agentkit/memory/base.py",
      "layer": "data",
      "summary": "Memory.delete(key) 异步方法",
      "tags": [
        "Memory",
        "delete"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Memory.store_batch",
      "type": "function",
      "name": "store_batch",
      "filePath": "src/agentkit/memory/base.py",
      "layer": "data",
      "summary": "Memory.store_batch(items) 异步方法",
      "tags": [
        "Memory",
        "store_batch"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Memory.get_context",
      "type": "function",
      "name": "get_context",
      "filePath": "src/agentkit/memory/base.py",
      "layer": "data",
      "summary": "Memory.get_context(query, token_budget) 异步方法",
      "tags": [
        "Memory",
        "get_context"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Chunk",
      "type": "class",
      "name": "Chunk",
      "filePath": "src/agentkit/memory/chunking.py",
      "layer": "data",
      "summary": "文档分块",
      "tags": [
        "Chunk"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Chunk.__post_init__",
      "type": "function",
      "name": "__post_init__",
      "filePath": "src/agentkit/memory/chunking.py",
      "layer": "data",
      "summary": "Chunk.__post_init__() 方法",
      "tags": [
        "Chunk",
        "__post_init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Chunk.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/memory/chunking.py",
      "layer": "data",
      "summary": "Chunk.to_dict() 方法",
      "tags": [
        "Chunk",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TextChunker",
      "type": "class",
      "name": "TextChunker",
      "filePath": "src/agentkit/memory/chunking.py",
      "layer": "data",
      "summary": "按字符数分块，带重叠",
      "tags": [
        "TextChunker"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:TextChunker.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/chunking.py",
      "layer": "data",
      "summary": "TextChunker.__init__(chunk_size, chunk_overlap, separator) 方法",
      "tags": [
        "TextChunker",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TextChunker.chunk",
      "type": "function",
      "name": "chunk",
      "filePath": "src/agentkit/memory/chunking.py",
      "layer": "data",
      "summary": "TextChunker.chunk(text, source_doc_id, metadata) 方法",
      "tags": [
        "TextChunker",
        "chunk"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TextChunker._split_by_separator",
      "type": "function",
      "name": "_split_by_separator",
      "filePath": "src/agentkit/memory/chunking.py",
      "layer": "data",
      "summary": "TextChunker._split_by_separator(text) 方法",
      "tags": [
        "TextChunker",
        "_split_by_separator"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TextChunker._merge_and_split",
      "type": "function",
      "name": "_merge_and_split",
      "filePath": "src/agentkit/memory/chunking.py",
      "layer": "data",
      "summary": "TextChunker._merge_and_split(segments) 方法",
      "tags": [
        "TextChunker",
        "_merge_and_split"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TextChunker._split_large_segment",
      "type": "function",
      "name": "_split_large_segment",
      "filePath": "src/agentkit/memory/chunking.py",
      "layer": "data",
      "summary": "TextChunker._split_large_segment(segment) 方法",
      "tags": [
        "TextChunker",
        "_split_large_segment"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TextChunker._get_overlap_segments",
      "type": "function",
      "name": "_get_overlap_segments",
      "filePath": "src/agentkit/memory/chunking.py",
      "layer": "data",
      "summary": "TextChunker._get_overlap_segments(overlap_text, segments) 方法",
      "tags": [
        "TextChunker",
        "_get_overlap_segments"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:StructuralChunker",
      "type": "class",
      "name": "StructuralChunker",
      "filePath": "src/agentkit/memory/chunking.py",
      "layer": "data",
      "summary": "按文档结构分块",
      "tags": [
        "StructuralChunker"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StructuralChunker.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/chunking.py",
      "layer": "data",
      "summary": "StructuralChunker.__init__(chunk_size, chunk_overlap, heading_levels) 方法",
      "tags": [
        "StructuralChunker",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StructuralChunker.chunk",
      "type": "function",
      "name": "chunk",
      "filePath": "src/agentkit/memory/chunking.py",
      "layer": "data",
      "summary": "StructuralChunker.chunk(text, source_doc_id, metadata) 方法",
      "tags": [
        "StructuralChunker",
        "chunk"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StructuralChunker._split_by_headings",
      "type": "function",
      "name": "_split_by_headings",
      "filePath": "src/agentkit/memory/chunking.py",
      "layer": "data",
      "summary": "StructuralChunker._split_by_headings(text) 方法",
      "tags": [
        "StructuralChunker",
        "_split_by_headings"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ContextualChunk",
      "type": "class",
      "name": "ContextualChunk",
      "filePath": "src/agentkit/memory/contextual_retrieval.py",
      "layer": "data",
      "summary": "带上下文前缀的文档块",
      "tags": [
        "ContextualChunk"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ContextualChunk.content",
      "type": "function",
      "name": "content",
      "filePath": "src/agentkit/memory/contextual_retrieval.py",
      "layer": "data",
      "summary": "ContextualChunk.content() 方法",
      "tags": [
        "ContextualChunk",
        "content"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ContextualChunker",
      "type": "class",
      "name": "ContextualChunker",
      "filePath": "src/agentkit/memory/contextual_retrieval.py",
      "layer": "data",
      "summary": "上下文增强分块器",
      "tags": [
        "ContextualChunker"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:ContextualChunker.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/contextual_retrieval.py",
      "layer": "data",
      "summary": "ContextualChunker.__init__(llm_gateway, cache, batch_size, max_context_length, prompt_template) 方法",
      "tags": [
        "ContextualChunker",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ContextualChunker.enhance_chunks",
      "type": "function",
      "name": "enhance_chunks",
      "filePath": "src/agentkit/memory/contextual_retrieval.py",
      "layer": "data",
      "summary": "ContextualChunker.enhance_chunks(document, chunks, metadata) 异步方法",
      "tags": [
        "ContextualChunker",
        "enhance_chunks"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ContextualChunker._process_batch",
      "type": "function",
      "name": "_process_batch",
      "filePath": "src/agentkit/memory/contextual_retrieval.py",
      "layer": "data",
      "summary": "ContextualChunker._process_batch(document, chunks, start_index, metadata) 异步方法",
      "tags": [
        "ContextualChunker",
        "_process_batch"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ContextualChunker._generate_context",
      "type": "function",
      "name": "_generate_context",
      "filePath": "src/agentkit/memory/contextual_retrieval.py",
      "layer": "data",
      "summary": "ContextualChunker._generate_context(document, chunk) 异步方法",
      "tags": [
        "ContextualChunker",
        "_generate_context"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ContextualChunker._make_cache_key",
      "type": "function",
      "name": "_make_cache_key",
      "filePath": "src/agentkit/memory/contextual_retrieval.py",
      "layer": "data",
      "summary": "ContextualChunker._make_cache_key(document, chunk) 方法",
      "tags": [
        "ContextualChunker",
        "_make_cache_key"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ContextualChunker.clear_cache",
      "type": "function",
      "name": "clear_cache",
      "filePath": "src/agentkit/memory/contextual_retrieval.py",
      "layer": "data",
      "summary": "ContextualChunker.clear_cache() 方法",
      "tags": [
        "ContextualChunker",
        "clear_cache"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Document",
      "type": "class",
      "name": "Document",
      "filePath": "src/agentkit/memory/document_loader.py",
      "layer": "data",
      "summary": "解析后的文档统一格式",
      "tags": [
        "Document"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Document.__post_init__",
      "type": "function",
      "name": "__post_init__",
      "filePath": "src/agentkit/memory/document_loader.py",
      "layer": "data",
      "summary": "Document.__post_init__() 方法",
      "tags": [
        "Document",
        "__post_init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Document.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/memory/document_loader.py",
      "layer": "data",
      "summary": "Document.to_dict() 方法",
      "tags": [
        "Document",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:DocumentLoader",
      "type": "class",
      "name": "DocumentLoader",
      "filePath": "src/agentkit/memory/document_loader.py",
      "layer": "data",
      "summary": "多格式文档解析器",
      "tags": [
        "DocumentLoader"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:DocumentLoader.load",
      "type": "function",
      "name": "load",
      "filePath": "src/agentkit/memory/document_loader.py",
      "layer": "data",
      "summary": "DocumentLoader.load(file_path) 方法",
      "tags": [
        "DocumentLoader",
        "load"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DocumentLoader.load_bytes",
      "type": "function",
      "name": "load_bytes",
      "filePath": "src/agentkit/memory/document_loader.py",
      "layer": "data",
      "summary": "DocumentLoader.load_bytes(content, filename) 方法",
      "tags": [
        "DocumentLoader",
        "load_bytes"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DocumentLoader._parse_pdf",
      "type": "function",
      "name": "_parse_pdf",
      "filePath": "src/agentkit/memory/document_loader.py",
      "layer": "data",
      "summary": "DocumentLoader._parse_pdf(content, filename) 方法",
      "tags": [
        "DocumentLoader",
        "_parse_pdf"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DocumentLoader._parse_docx",
      "type": "function",
      "name": "_parse_docx",
      "filePath": "src/agentkit/memory/document_loader.py",
      "layer": "data",
      "summary": "DocumentLoader._parse_docx(content, filename) 方法",
      "tags": [
        "DocumentLoader",
        "_parse_docx"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DocumentLoader._parse_markdown",
      "type": "function",
      "name": "_parse_markdown",
      "filePath": "src/agentkit/memory/document_loader.py",
      "layer": "data",
      "summary": "DocumentLoader._parse_markdown(content, filename) 方法",
      "tags": [
        "DocumentLoader",
        "_parse_markdown"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DocumentLoader._parse_html",
      "type": "function",
      "name": "_parse_html",
      "filePath": "src/agentkit/memory/document_loader.py",
      "layer": "data",
      "summary": "DocumentLoader._parse_html(content, filename) 方法",
      "tags": [
        "DocumentLoader",
        "_parse_html"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DocumentLoader._parse_text",
      "type": "function",
      "name": "_parse_text",
      "filePath": "src/agentkit/memory/document_loader.py",
      "layer": "data",
      "summary": "DocumentLoader._parse_text(content, filename) 方法",
      "tags": [
        "DocumentLoader",
        "_parse_text"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EmbeddingCache",
      "type": "class",
      "name": "EmbeddingCache",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "LRU cache for embedding vectors with TTL support.",
      "tags": [
        "EmbeddingCache"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:EmbeddingCache.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "EmbeddingCache.__init__(max_size, ttl) 方法",
      "tags": [
        "EmbeddingCache",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EmbeddingCache._make_key",
      "type": "function",
      "name": "_make_key",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "EmbeddingCache._make_key(text) 方法",
      "tags": [
        "EmbeddingCache",
        "_make_key"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EmbeddingCache.get",
      "type": "function",
      "name": "get",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "EmbeddingCache.get(text) 方法",
      "tags": [
        "EmbeddingCache",
        "get"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EmbeddingCache.put",
      "type": "function",
      "name": "put",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "EmbeddingCache.put(text, embedding) 方法",
      "tags": [
        "EmbeddingCache",
        "put"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EmbeddingCache.clear",
      "type": "function",
      "name": "clear",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "EmbeddingCache.clear() 方法",
      "tags": [
        "EmbeddingCache",
        "clear"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Embedder",
      "type": "class",
      "name": "Embedder",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "文本嵌入抽象基类",
      "tags": [
        "Embedder"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Embedder.embed",
      "type": "function",
      "name": "embed",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "Embedder.embed(text) 异步方法",
      "tags": [
        "Embedder",
        "embed"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Embedder.get_dimension",
      "type": "function",
      "name": "get_dimension",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "Embedder.get_dimension() 方法",
      "tags": [
        "Embedder",
        "get_dimension"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:OpenAIEmbedder",
      "type": "class",
      "name": "OpenAIEmbedder",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "OpenAI Embeddings API 实现",
      "tags": [
        "OpenAIEmbedder"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:OpenAIEmbedder.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "OpenAIEmbedder.__init__(api_key, model, base_url, cache) 方法",
      "tags": [
        "OpenAIEmbedder",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OpenAIEmbedder._get_client",
      "type": "function",
      "name": "_get_client",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "OpenAIEmbedder._get_client() 方法",
      "tags": [
        "OpenAIEmbedder",
        "_get_client"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OpenAIEmbedder.aclose",
      "type": "function",
      "name": "aclose",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "OpenAIEmbedder.aclose() 异步方法",
      "tags": [
        "OpenAIEmbedder",
        "aclose"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OpenAIEmbedder.__aenter__",
      "type": "function",
      "name": "__aenter__",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "OpenAIEmbedder.__aenter__() 异步方法",
      "tags": [
        "OpenAIEmbedder",
        "__aenter__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OpenAIEmbedder.__aexit__",
      "type": "function",
      "name": "__aexit__",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "OpenAIEmbedder.__aexit__(exc_type, exc_val, exc_tb) 异步方法",
      "tags": [
        "OpenAIEmbedder",
        "__aexit__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OpenAIEmbedder.embed",
      "type": "function",
      "name": "embed",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "OpenAIEmbedder.embed(text) 异步方法",
      "tags": [
        "OpenAIEmbedder",
        "embed"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OpenAIEmbedder.get_dimension",
      "type": "function",
      "name": "get_dimension",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "OpenAIEmbedder.get_dimension() 方法",
      "tags": [
        "OpenAIEmbedder",
        "get_dimension"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MockEmbedder",
      "type": "class",
      "name": "MockEmbedder",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "Mock Embedder - 生成确定性伪嵌入向量，用于测试",
      "tags": [
        "MockEmbedder"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MockEmbedder.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "MockEmbedder.__init__(dimension) 方法",
      "tags": [
        "MockEmbedder",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MockEmbedder.embed",
      "type": "function",
      "name": "embed",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "MockEmbedder.embed(text) 异步方法",
      "tags": [
        "MockEmbedder",
        "embed"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MockEmbedder.get_dimension",
      "type": "function",
      "name": "get_dimension",
      "filePath": "src/agentkit/memory/embedder.py",
      "layer": "data",
      "summary": "MockEmbedder.get_dimension() 方法",
      "tags": [
        "MockEmbedder",
        "get_dimension"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EpisodicMemory",
      "type": "class",
      "name": "EpisodicMemory",
      "filePath": "src/agentkit/memory/episodic.py",
      "layer": "data",
      "summary": "Episodic Memory - 记录每次任务的输入/输出/效果/反思",
      "tags": [
        "EpisodicMemory"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:EpisodicMemory.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/episodic.py",
      "layer": "data",
      "summary": "EpisodicMemory.__init__(session_factory, episodic_model, embedder, decay_rate, alpha, retrieve_limit, pgvector_enabled, table_name) 方法",
      "tags": [
        "EpisodicMemory",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EpisodicMemory.store",
      "type": "function",
      "name": "store",
      "filePath": "src/agentkit/memory/episodic.py",
      "layer": "data",
      "summary": "EpisodicMemory.store(key, value, metadata) 异步方法",
      "tags": [
        "EpisodicMemory",
        "store"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EpisodicMemory.retrieve",
      "type": "function",
      "name": "retrieve",
      "filePath": "src/agentkit/memory/episodic.py",
      "layer": "data",
      "summary": "EpisodicMemory.retrieve(key) 异步方法",
      "tags": [
        "EpisodicMemory",
        "retrieve"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EpisodicMemory._retrieve_pgvector",
      "type": "function",
      "name": "_retrieve_pgvector",
      "filePath": "src/agentkit/memory/episodic.py",
      "layer": "data",
      "summary": "EpisodicMemory._retrieve_pgvector(db, query_embedding) 异步方法",
      "tags": [
        "EpisodicMemory",
        "_retrieve_pgvector"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EpisodicMemory._retrieve_client_side",
      "type": "function",
      "name": "_retrieve_client_side",
      "filePath": "src/agentkit/memory/episodic.py",
      "layer": "data",
      "summary": "EpisodicMemory._retrieve_client_side(db, query_embedding) 异步方法",
      "tags": [
        "EpisodicMemory",
        "_retrieve_client_side"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EpisodicMemory.search",
      "type": "function",
      "name": "search",
      "filePath": "src/agentkit/memory/episodic.py",
      "layer": "data",
      "summary": "EpisodicMemory.search(query, top_k, filters, search_multiplier) 异步方法",
      "tags": [
        "EpisodicMemory",
        "search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EpisodicMemory._search_pgvector",
      "type": "function",
      "name": "_search_pgvector",
      "filePath": "src/agentkit/memory/episodic.py",
      "layer": "data",
      "summary": "EpisodicMemory._search_pgvector(db, query, top_k, filters, search_multiplier) 异步方法",
      "tags": [
        "EpisodicMemory",
        "_search_pgvector"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EpisodicMemory._search_client_side",
      "type": "function",
      "name": "_search_client_side",
      "filePath": "src/agentkit/memory/episodic.py",
      "layer": "data",
      "summary": "EpisodicMemory._search_client_side(db, query, top_k, filters, search_multiplier) 异步方法",
      "tags": [
        "EpisodicMemory",
        "_search_client_side"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:EpisodicMemory.delete",
      "type": "function",
      "name": "delete",
      "filePath": "src/agentkit/memory/episodic.py",
      "layer": "data",
      "summary": "EpisodicMemory.delete(key) 异步方法",
      "tags": [
        "EpisodicMemory",
        "delete"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:HttpRAGService",
      "type": "class",
      "name": "HttpRAGService",
      "filePath": "src/agentkit/memory/http_rag.py",
      "layer": "data",
      "summary": "HTTP 客户端，调用业务系统的知识库检索 API",
      "tags": [
        "HttpRAGService"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:HttpRAGService.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/http_rag.py",
      "layer": "data",
      "summary": "HttpRAGService.__init__(base_url, api_key, knowledge_base_ids, timeout, contextual_chunking, llm_gateway) 方法",
      "tags": [
        "HttpRAGService",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HttpRAGService._get_client",
      "type": "function",
      "name": "_get_client",
      "filePath": "src/agentkit/memory/http_rag.py",
      "layer": "data",
      "summary": "HttpRAGService._get_client() 方法",
      "tags": [
        "HttpRAGService",
        "_get_client"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HttpRAGService.search",
      "type": "function",
      "name": "search",
      "filePath": "src/agentkit/memory/http_rag.py",
      "layer": "data",
      "summary": "HttpRAGService.search(query, knowledge_base_ids, top_k) 异步方法",
      "tags": [
        "HttpRAGService",
        "search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HttpRAGService.enhanced_search",
      "type": "function",
      "name": "enhanced_search",
      "filePath": "src/agentkit/memory/http_rag.py",
      "layer": "data",
      "summary": "HttpRAGService.enhanced_search(query, knowledge_base_ids, top_k, use_rerank, use_compression) 异步方法",
      "tags": [
        "HttpRAGService",
        "enhanced_search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HttpRAGService.ingest",
      "type": "function",
      "name": "ingest",
      "filePath": "src/agentkit/memory/http_rag.py",
      "layer": "data",
      "summary": "HttpRAGService.ingest(key, value, metadata) 异步方法",
      "tags": [
        "HttpRAGService",
        "ingest"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HttpRAGService.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/memory/http_rag.py",
      "layer": "data",
      "summary": "HttpRAGService.health_check() 异步方法",
      "tags": [
        "HttpRAGService",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HttpRAGService.close",
      "type": "function",
      "name": "close",
      "filePath": "src/agentkit/memory/http_rag.py",
      "layer": "data",
      "summary": "HttpRAGService.close() 异步方法",
      "tags": [
        "HttpRAGService",
        "close"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HttpRAGService.__aenter__",
      "type": "function",
      "name": "__aenter__",
      "filePath": "src/agentkit/memory/http_rag.py",
      "layer": "data",
      "summary": "HttpRAGService.__aenter__() 异步方法",
      "tags": [
        "HttpRAGService",
        "__aenter__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HttpRAGService.__aexit__",
      "type": "function",
      "name": "__aexit__",
      "filePath": "src/agentkit/memory/http_rag.py",
      "layer": "data",
      "summary": "HttpRAGService.__aexit__() 异步方法",
      "tags": [
        "HttpRAGService",
        "__aexit__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Document",
      "type": "class",
      "name": "Document",
      "filePath": "src/agentkit/memory/knowledge_base.py",
      "layer": "data",
      "summary": "知识库文档",
      "tags": [
        "Document"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:QueryResult",
      "type": "class",
      "name": "QueryResult",
      "filePath": "src/agentkit/memory/knowledge_base.py",
      "layer": "data",
      "summary": "知识库检索结果",
      "tags": [
        "QueryResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SourceInfo",
      "type": "class",
      "name": "SourceInfo",
      "filePath": "src/agentkit/memory/knowledge_base.py",
      "layer": "data",
      "summary": "知识库信息源描述",
      "tags": [
        "SourceInfo"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:KnowledgeBase",
      "type": "class",
      "name": "KnowledgeBase",
      "filePath": "src/agentkit/memory/knowledge_base.py",
      "layer": "data",
      "summary": "知识库协议 - 统一的外部知识库接口",
      "tags": [
        "KnowledgeBase"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:KnowledgeBase.ingest",
      "type": "function",
      "name": "ingest",
      "filePath": "src/agentkit/memory/knowledge_base.py",
      "layer": "data",
      "summary": "KnowledgeBase.ingest(documents) 异步方法",
      "tags": [
        "KnowledgeBase",
        "ingest"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KnowledgeBase.query",
      "type": "function",
      "name": "query",
      "filePath": "src/agentkit/memory/knowledge_base.py",
      "layer": "data",
      "summary": "KnowledgeBase.query(text, top_k) 异步方法",
      "tags": [
        "KnowledgeBase",
        "query"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KnowledgeBase.delete_by_id",
      "type": "function",
      "name": "delete_by_id",
      "filePath": "src/agentkit/memory/knowledge_base.py",
      "layer": "data",
      "summary": "KnowledgeBase.delete_by_id(id) 异步方法",
      "tags": [
        "KnowledgeBase",
        "delete_by_id"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KnowledgeBase.list_sources",
      "type": "function",
      "name": "list_sources",
      "filePath": "src/agentkit/memory/knowledge_base.py",
      "layer": "data",
      "summary": "KnowledgeBase.list_sources() 异步方法",
      "tags": [
        "KnowledgeBase",
        "list_sources"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KnowledgeBase.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/memory/knowledge_base.py",
      "layer": "data",
      "summary": "KnowledgeBase.health_check() 异步方法",
      "tags": [
        "KnowledgeBase",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LocalRAGService",
      "type": "class",
      "name": "LocalRAGService",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "基于 pgvector 的本地 RAG 服务",
      "tags": [
        "LocalRAGService"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:LocalRAGService.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "LocalRAGService.__init__(session_factory, embedder, chunk_size, chunk_overlap, table_name, pgvector_enabled) 方法",
      "tags": [
        "LocalRAGService",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LocalRAGService.ingest",
      "type": "function",
      "name": "ingest",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "LocalRAGService.ingest(documents) 异步方法",
      "tags": [
        "LocalRAGService",
        "ingest"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LocalRAGService.query",
      "type": "function",
      "name": "query",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "LocalRAGService.query(text, top_k) 异步方法",
      "tags": [
        "LocalRAGService",
        "query"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LocalRAGService.delete_by_id",
      "type": "function",
      "name": "delete_by_id",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "LocalRAGService.delete_by_id(id) 异步方法",
      "tags": [
        "LocalRAGService",
        "delete_by_id"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LocalRAGService.list_sources",
      "type": "function",
      "name": "list_sources",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "LocalRAGService.list_sources() 异步方法",
      "tags": [
        "LocalRAGService",
        "list_sources"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LocalRAGService.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "LocalRAGService.health_check() 异步方法",
      "tags": [
        "LocalRAGService",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LocalRAGService._chunk_document",
      "type": "function",
      "name": "_chunk_document",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "LocalRAGService._chunk_document(doc) 方法",
      "tags": [
        "LocalRAGService",
        "_chunk_document"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LocalRAGService._store_chunks",
      "type": "function",
      "name": "_store_chunks",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "LocalRAGService._store_chunks(doc, chunks) 异步方法",
      "tags": [
        "LocalRAGService",
        "_store_chunks"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LocalRAGService._query_pgvector",
      "type": "function",
      "name": "_query_pgvector",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "LocalRAGService._query_pgvector(db, query_embedding, top_k) 异步方法",
      "tags": [
        "LocalRAGService",
        "_query_pgvector"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LocalRAGService._query_client_side",
      "type": "function",
      "name": "_query_client_side",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "LocalRAGService._query_client_side(db, query_embedding, top_k) 异步方法",
      "tags": [
        "LocalRAGService",
        "_query_client_side"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:InMemoryLocalRAGService",
      "type": "class",
      "name": "InMemoryLocalRAGService",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "基于内存的本地 RAG 服务",
      "tags": [
        "InMemoryLocalRAGService"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:InMemoryLocalRAGService.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "InMemoryLocalRAGService.__init__(embedder, chunk_size, chunk_overlap) 方法",
      "tags": [
        "InMemoryLocalRAGService",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryLocalRAGService.ingest",
      "type": "function",
      "name": "ingest",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "InMemoryLocalRAGService.ingest(documents) 异步方法",
      "tags": [
        "InMemoryLocalRAGService",
        "ingest"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryLocalRAGService.query",
      "type": "function",
      "name": "query",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "InMemoryLocalRAGService.query(text, top_k) 异步方法",
      "tags": [
        "InMemoryLocalRAGService",
        "query"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryLocalRAGService.delete_by_id",
      "type": "function",
      "name": "delete_by_id",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "InMemoryLocalRAGService.delete_by_id(id) 异步方法",
      "tags": [
        "InMemoryLocalRAGService",
        "delete_by_id"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryLocalRAGService.list_sources",
      "type": "function",
      "name": "list_sources",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "InMemoryLocalRAGService.list_sources() 异步方法",
      "tags": [
        "InMemoryLocalRAGService",
        "list_sources"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryLocalRAGService.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "InMemoryLocalRAGService.health_check() 异步方法",
      "tags": [
        "InMemoryLocalRAGService",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryLocalRAGService._chunk_document",
      "type": "function",
      "name": "_chunk_document",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "InMemoryLocalRAGService._chunk_document(doc) 方法",
      "tags": [
        "InMemoryLocalRAGService",
        "_chunk_document"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EpisodeModel",
      "type": "class",
      "name": "EpisodeModel",
      "filePath": "src/agentkit/memory/models.py",
      "layer": "data",
      "summary": "Episodic memory ORM model",
      "tags": [
        "EpisodeModel"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MultiSourceRetriever",
      "type": "class",
      "name": "MultiSourceRetriever",
      "filePath": "src/agentkit/memory/multi_source_retriever.py",
      "layer": "data",
      "summary": "多源混合检索器",
      "tags": [
        "MultiSourceRetriever"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:MultiSourceRetriever.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/multi_source_retriever.py",
      "layer": "data",
      "summary": "MultiSourceRetriever.__init__(sources) 方法",
      "tags": [
        "MultiSourceRetriever",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MultiSourceRetriever.register_source",
      "type": "function",
      "name": "register_source",
      "filePath": "src/agentkit/memory/multi_source_retriever.py",
      "layer": "data",
      "summary": "MultiSourceRetriever.register_source(name, knowledge_base) 方法",
      "tags": [
        "MultiSourceRetriever",
        "register_source"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MultiSourceRetriever.unregister_source",
      "type": "function",
      "name": "unregister_source",
      "filePath": "src/agentkit/memory/multi_source_retriever.py",
      "layer": "data",
      "summary": "MultiSourceRetriever.unregister_source(name) 方法",
      "tags": [
        "MultiSourceRetriever",
        "unregister_source"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MultiSourceRetriever.search",
      "type": "function",
      "name": "search",
      "filePath": "src/agentkit/memory/multi_source_retriever.py",
      "layer": "data",
      "summary": "MultiSourceRetriever.search(query, top_k, sources, weights) 异步方法",
      "tags": [
        "MultiSourceRetriever",
        "search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MultiSourceRetriever.list_all_sources",
      "type": "function",
      "name": "list_all_sources",
      "filePath": "src/agentkit/memory/multi_source_retriever.py",
      "layer": "data",
      "summary": "MultiSourceRetriever.list_all_sources() 异步方法",
      "tags": [
        "MultiSourceRetriever",
        "list_all_sources"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MultiSourceRetriever.get_source_names",
      "type": "function",
      "name": "get_source_names",
      "filePath": "src/agentkit/memory/multi_source_retriever.py",
      "layer": "data",
      "summary": "MultiSourceRetriever.get_source_names() 方法",
      "tags": [
        "MultiSourceRetriever",
        "get_source_names"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MultiSourceRetriever._resolve_sources",
      "type": "function",
      "name": "_resolve_sources",
      "filePath": "src/agentkit/memory/multi_source_retriever.py",
      "layer": "data",
      "summary": "MultiSourceRetriever._resolve_sources(sources) 方法",
      "tags": [
        "MultiSourceRetriever",
        "_resolve_sources"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MultiSourceRetriever._query_sources",
      "type": "function",
      "name": "_query_sources",
      "filePath": "src/agentkit/memory/multi_source_retriever.py",
      "layer": "data",
      "summary": "MultiSourceRetriever._query_sources(query, top_k, target_sources, weights) 异步方法",
      "tags": [
        "MultiSourceRetriever",
        "_query_sources"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MultiSourceRetriever._deduplicate",
      "type": "function",
      "name": "_deduplicate",
      "filePath": "src/agentkit/memory/multi_source_retriever.py",
      "layer": "data",
      "summary": "MultiSourceRetriever._deduplicate(results) 方法",
      "tags": [
        "MultiSourceRetriever",
        "_deduplicate"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MemoryFile",
      "type": "class",
      "name": "MemoryFile",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "单个记忆文件的管理器，支持 section 级别 CRUD 和容量控制.",
      "tags": [
        "MemoryFile"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:MemoryFile.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryFile.__init__(path, char_budget, protected_sections) 方法",
      "tags": [
        "MemoryFile",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryFile.read",
      "type": "function",
      "name": "read",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryFile.read() 方法",
      "tags": [
        "MemoryFile",
        "read"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryFile.write",
      "type": "function",
      "name": "write",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryFile.write(content) 方法",
      "tags": [
        "MemoryFile",
        "write"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryFile.read_section",
      "type": "function",
      "name": "read_section",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryFile.read_section(name) 方法",
      "tags": [
        "MemoryFile",
        "read_section"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryFile.add_section",
      "type": "function",
      "name": "add_section",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryFile.add_section(name, content) 方法",
      "tags": [
        "MemoryFile",
        "add_section"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryFile.replace_section",
      "type": "function",
      "name": "replace_section",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryFile.replace_section(name, old_text, new_text) 方法",
      "tags": [
        "MemoryFile",
        "replace_section"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryFile.remove_section",
      "type": "function",
      "name": "remove_section",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryFile.remove_section(name) 方法",
      "tags": [
        "MemoryFile",
        "remove_section"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryFile.list_sections",
      "type": "function",
      "name": "list_sections",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryFile.list_sections() 方法",
      "tags": [
        "MemoryFile",
        "list_sections"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryFile.trim_to_budget",
      "type": "function",
      "name": "trim_to_budget",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryFile.trim_to_budget(protected_sections) 方法",
      "tags": [
        "MemoryFile",
        "trim_to_budget"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryFile._trim_content",
      "type": "function",
      "name": "_trim_content",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryFile._trim_content(content, protected_sections) 方法",
      "tags": [
        "MemoryFile",
        "_trim_content"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MemorySnapshot",
      "type": "class",
      "name": "MemorySnapshot",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "一次加载的所有记忆文件快照.",
      "tags": [
        "MemorySnapshot"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemorySnapshot.is_empty",
      "type": "function",
      "name": "is_empty",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemorySnapshot.is_empty() 方法",
      "tags": [
        "MemorySnapshot",
        "is_empty"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MemoryStore",
      "type": "class",
      "name": "MemoryStore",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "管理 SOUL/USER/MEMORY/DAILY 四类记忆文件.",
      "tags": [
        "MemoryStore"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:MemoryStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryStore.__init__(base_dir, on_change) 方法",
      "tags": [
        "MemoryStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryStore.get_file",
      "type": "function",
      "name": "get_file",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryStore.get_file(file_key) 方法",
      "tags": [
        "MemoryStore",
        "get_file"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryStore.ensure_defaults",
      "type": "function",
      "name": "ensure_defaults",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryStore.ensure_defaults() 方法",
      "tags": [
        "MemoryStore",
        "ensure_defaults"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryStore.load_all",
      "type": "function",
      "name": "load_all",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryStore.load_all() 方法",
      "tags": [
        "MemoryStore",
        "load_all"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryStore.load_daily_logs",
      "type": "function",
      "name": "load_daily_logs",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryStore.load_daily_logs(days) 方法",
      "tags": [
        "MemoryStore",
        "load_daily_logs"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryStore.archive_old_dailies",
      "type": "function",
      "name": "archive_old_dailies",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryStore.archive_old_dailies(keep_days) 方法",
      "tags": [
        "MemoryStore",
        "archive_old_dailies"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryStore.build_system_prompt",
      "type": "function",
      "name": "build_system_prompt",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryStore.build_system_prompt(snapshot, base_prompt) 方法",
      "tags": [
        "MemoryStore",
        "build_system_prompt"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryStore.refresh_system_prompt",
      "type": "function",
      "name": "refresh_system_prompt",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryStore.refresh_system_prompt() 方法",
      "tags": [
        "MemoryStore",
        "refresh_system_prompt"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryStore.notify_change",
      "type": "function",
      "name": "notify_change",
      "filePath": "src/agentkit/memory/profile.py",
      "layer": "data",
      "summary": "MemoryStore.notify_change() 方法",
      "tags": [
        "MemoryStore",
        "notify_change"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TransformedQuery",
      "type": "class",
      "name": "TransformedQuery",
      "filePath": "src/agentkit/memory/query_transformer.py",
      "layer": "data",
      "summary": "改写后的查询",
      "tags": [
        "TransformedQuery"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:QueryTransformerBase",
      "type": "class",
      "name": "QueryTransformerBase",
      "filePath": "src/agentkit/memory/query_transformer.py",
      "layer": "data",
      "summary": "查询改写抽象基类",
      "tags": [
        "QueryTransformerBase"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:QueryTransformerBase.transform",
      "type": "function",
      "name": "transform",
      "filePath": "src/agentkit/memory/query_transformer.py",
      "layer": "data",
      "summary": "QueryTransformerBase.transform(query) 异步方法",
      "tags": [
        "QueryTransformerBase",
        "transform"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LLMQueryTransformer",
      "type": "class",
      "name": "LLMQueryTransformer",
      "filePath": "src/agentkit/memory/query_transformer.py",
      "layer": "data",
      "summary": "基于 LLM 的查询改写",
      "tags": [
        "LLMQueryTransformer"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMQueryTransformer.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/query_transformer.py",
      "layer": "data",
      "summary": "LLMQueryTransformer.__init__(llm_gateway, max_sub_queries) 方法",
      "tags": [
        "LLMQueryTransformer",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LLMQueryTransformer.transform",
      "type": "function",
      "name": "transform",
      "filePath": "src/agentkit/memory/query_transformer.py",
      "layer": "data",
      "summary": "LLMQueryTransformer.transform(query) 异步方法",
      "tags": [
        "LLMQueryTransformer",
        "transform"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RuleQueryTransformer",
      "type": "class",
      "name": "RuleQueryTransformer",
      "filePath": "src/agentkit/memory/query_transformer.py",
      "layer": "data",
      "summary": "基于规则的查询改写",
      "tags": [
        "RuleQueryTransformer"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RuleQueryTransformer.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/query_transformer.py",
      "layer": "data",
      "summary": "RuleQueryTransformer.__init__(synonyms, max_sub_queries) 方法",
      "tags": [
        "RuleQueryTransformer",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RuleQueryTransformer.transform",
      "type": "function",
      "name": "transform",
      "filePath": "src/agentkit/memory/query_transformer.py",
      "layer": "data",
      "summary": "RuleQueryTransformer.transform(query) 异步方法",
      "tags": [
        "RuleQueryTransformer",
        "transform"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:NoOpQueryTransformer",
      "type": "class",
      "name": "NoOpQueryTransformer",
      "filePath": "src/agentkit/memory/query_transformer.py",
      "layer": "data",
      "summary": "不做任何改写，原样返回",
      "tags": [
        "NoOpQueryTransformer"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:NoOpQueryTransformer.transform",
      "type": "function",
      "name": "transform",
      "filePath": "src/agentkit/memory/query_transformer.py",
      "layer": "data",
      "summary": "NoOpQueryTransformer.transform(query) 异步方法",
      "tags": [
        "NoOpQueryTransformer",
        "transform"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LoopState",
      "type": "class",
      "name": "LoopState",
      "filePath": "src/agentkit/memory/rag_loop.py",
      "layer": "data",
      "summary": "自纠正循环状态",
      "tags": [
        "LoopState"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CorrectionAttempt",
      "type": "class",
      "name": "CorrectionAttempt",
      "filePath": "src/agentkit/memory/rag_loop.py",
      "layer": "data",
      "summary": "一次纠正尝试的记录",
      "tags": [
        "CorrectionAttempt"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RAGLoopResult",
      "type": "class",
      "name": "RAGLoopResult",
      "filePath": "src/agentkit/memory/rag_loop.py",
      "layer": "data",
      "summary": "自纠正循环的最终结果",
      "tags": [
        "RAGLoopResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RAGSelfCorrectionLoop",
      "type": "class",
      "name": "RAGSelfCorrectionLoop",
      "filePath": "src/agentkit/memory/rag_loop.py",
      "layer": "data",
      "summary": "CRAG 自纠正循环",
      "tags": [
        "RAGSelfCorrectionLoop"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:RAGSelfCorrectionLoop.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/rag_loop.py",
      "layer": "data",
      "summary": "RAGSelfCorrectionLoop.__init__(retriever, scorer, query_transformer, max_retries, min_items_for_correct) 方法",
      "tags": [
        "RAGSelfCorrectionLoop",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RAGSelfCorrectionLoop.retrieve_with_correction",
      "type": "function",
      "name": "retrieve_with_correction",
      "filePath": "src/agentkit/memory/rag_loop.py",
      "layer": "data",
      "summary": "RAGSelfCorrectionLoop.retrieve_with_correction(query, top_k, token_budget, filters) 异步方法",
      "tags": [
        "RAGSelfCorrectionLoop",
        "retrieve_with_correction"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RAGSelfCorrectionLoop._determine_next_state",
      "type": "function",
      "name": "_determine_next_state",
      "filePath": "src/agentkit/memory/rag_loop.py",
      "layer": "data",
      "summary": "RAGSelfCorrectionLoop._determine_next_state(evaluation, items) 方法",
      "tags": [
        "RAGSelfCorrectionLoop",
        "_determine_next_state"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RAGSelfCorrectionLoop._rewrite_query",
      "type": "function",
      "name": "_rewrite_query",
      "filePath": "src/agentkit/memory/rag_loop.py",
      "layer": "data",
      "summary": "RAGSelfCorrectionLoop._rewrite_query(original_query, current_query, evaluation) 异步方法",
      "tags": [
        "RAGSelfCorrectionLoop",
        "_rewrite_query"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RelevanceVerdict",
      "type": "class",
      "name": "RelevanceVerdict",
      "filePath": "src/agentkit/memory/relevance_scorer.py",
      "layer": "data",
      "summary": "相关性判定结果",
      "tags": [
        "RelevanceVerdict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RelevanceScore",
      "type": "class",
      "name": "RelevanceScore",
      "filePath": "src/agentkit/memory/relevance_scorer.py",
      "layer": "data",
      "summary": "单个文档的相关性评分",
      "tags": [
        "RelevanceScore"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RetrievalEvaluation",
      "type": "class",
      "name": "RetrievalEvaluation",
      "filePath": "src/agentkit/memory/relevance_scorer.py",
      "layer": "data",
      "summary": "一次检索的整体评估结果",
      "tags": [
        "RetrievalEvaluation"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RelevanceScorer",
      "type": "class",
      "name": "RelevanceScorer",
      "filePath": "src/agentkit/memory/relevance_scorer.py",
      "layer": "data",
      "summary": "检索结果相关性评估器",
      "tags": [
        "RelevanceScorer"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:RelevanceScorer.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/relevance_scorer.py",
      "layer": "data",
      "summary": "RelevanceScorer.__init__(correct_threshold, ambiguous_threshold, keyword_weight, coverage_weight, retrieval_weight, length_weight, min_doc_length, max_doc_length) 方法",
      "tags": [
        "RelevanceScorer",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RelevanceScorer.score_item",
      "type": "function",
      "name": "score_item",
      "filePath": "src/agentkit/memory/relevance_scorer.py",
      "layer": "data",
      "summary": "RelevanceScorer.score_item(query, item) 方法",
      "tags": [
        "RelevanceScorer",
        "score_item"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RelevanceScorer.evaluate",
      "type": "function",
      "name": "evaluate",
      "filePath": "src/agentkit/memory/relevance_scorer.py",
      "layer": "data",
      "summary": "RelevanceScorer.evaluate(query, items) 方法",
      "tags": [
        "RelevanceScorer",
        "evaluate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RelevanceScorer._determine_verdict",
      "type": "function",
      "name": "_determine_verdict",
      "filePath": "src/agentkit/memory/relevance_scorer.py",
      "layer": "data",
      "summary": "RelevanceScorer._determine_verdict(score) 方法",
      "tags": [
        "RelevanceScorer",
        "_determine_verdict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RelevanceScorer._tokenize",
      "type": "function",
      "name": "_tokenize",
      "filePath": "src/agentkit/memory/relevance_scorer.py",
      "layer": "data",
      "summary": "RelevanceScorer._tokenize(text) 方法",
      "tags": [
        "RelevanceScorer",
        "_tokenize"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RelevanceScorer._jaccard_similarity",
      "type": "function",
      "name": "_jaccard_similarity",
      "filePath": "src/agentkit/memory/relevance_scorer.py",
      "layer": "data",
      "summary": "RelevanceScorer._jaccard_similarity(set_a, set_b) 方法",
      "tags": [
        "RelevanceScorer",
        "_jaccard_similarity"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RelevanceScorer._query_coverage",
      "type": "function",
      "name": "_query_coverage",
      "filePath": "src/agentkit/memory/relevance_scorer.py",
      "layer": "data",
      "summary": "RelevanceScorer._query_coverage(query_terms, doc_terms) 方法",
      "tags": [
        "RelevanceScorer",
        "_query_coverage"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RelevanceScorer._length_score",
      "type": "function",
      "name": "_length_score",
      "filePath": "src/agentkit/memory/relevance_scorer.py",
      "layer": "data",
      "summary": "RelevanceScorer._length_score(length) 方法",
      "tags": [
        "RelevanceScorer",
        "_length_score"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MemoryRetriever",
      "type": "class",
      "name": "MemoryRetriever",
      "filePath": "src/agentkit/memory/retriever.py",
      "layer": "data",
      "summary": "混合检索器 - 并行查询三层记忆，按权重融合排序",
      "tags": [
        "MemoryRetriever"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:MemoryRetriever.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/retriever.py",
      "layer": "data",
      "summary": "MemoryRetriever.__init__(working_memory, episodic_memory, semantic_memory, weights, query_transformer, context_template, enable_self_correction, max_correction_retries, knowledge_sources) 方法",
      "tags": [
        "MemoryRetriever",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryRetriever.retrieve",
      "type": "function",
      "name": "retrieve",
      "filePath": "src/agentkit/memory/retriever.py",
      "layer": "data",
      "summary": "MemoryRetriever.retrieve(query, top_k, token_budget, filters, _skip_correction, sources, source_weights) 异步方法",
      "tags": [
        "MemoryRetriever",
        "retrieve"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryRetriever._search_layers",
      "type": "function",
      "name": "_search_layers",
      "filePath": "src/agentkit/memory/retriever.py",
      "layer": "data",
      "summary": "MemoryRetriever._search_layers(query, top_k, filters) 异步方法",
      "tags": [
        "MemoryRetriever",
        "_search_layers"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryRetriever._retrieve_from_sources",
      "type": "function",
      "name": "_retrieve_from_sources",
      "filePath": "src/agentkit/memory/retriever.py",
      "layer": "data",
      "summary": "MemoryRetriever._retrieve_from_sources(query, top_k, token_budget, sources, source_weights) 异步方法",
      "tags": [
        "MemoryRetriever",
        "_retrieve_from_sources"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryRetriever.multi_source_retriever",
      "type": "function",
      "name": "multi_source_retriever",
      "filePath": "src/agentkit/memory/retriever.py",
      "layer": "data",
      "summary": "MemoryRetriever.multi_source_retriever() 方法",
      "tags": [
        "MemoryRetriever",
        "multi_source_retriever"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryRetriever.get_context_string",
      "type": "function",
      "name": "get_context_string",
      "filePath": "src/agentkit/memory/retriever.py",
      "layer": "data",
      "summary": "MemoryRetriever.get_context_string(query, top_k, token_budget) 异步方法",
      "tags": [
        "MemoryRetriever",
        "get_context_string"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryRetriever._format_structured_header",
      "type": "function",
      "name": "_format_structured_header",
      "filePath": "src/agentkit/memory/retriever.py",
      "layer": "data",
      "summary": "MemoryRetriever._format_structured_header(item) 方法",
      "tags": [
        "MemoryRetriever",
        "_format_structured_header"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryRetriever.store_episode",
      "type": "function",
      "name": "store_episode",
      "filePath": "src/agentkit/memory/retriever.py",
      "layer": "data",
      "summary": "MemoryRetriever.store_episode(key, value, metadata) 异步方法",
      "tags": [
        "MemoryRetriever",
        "store_episode"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryRetriever.create_retrieve_tool",
      "type": "function",
      "name": "create_retrieve_tool",
      "filePath": "src/agentkit/memory/retriever.py",
      "layer": "data",
      "summary": "MemoryRetriever.create_retrieve_tool(max_calls) 方法",
      "tags": [
        "MemoryRetriever",
        "create_retrieve_tool"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RetrieveKnowledgeTool",
      "type": "class",
      "name": "RetrieveKnowledgeTool",
      "filePath": "src/agentkit/memory/retriever.py",
      "layer": "data",
      "summary": "Built-in tool for knowledge base retrieval during ReAct reasoning.",
      "tags": [
        "RetrieveKnowledgeTool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RetrieveKnowledgeTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/retriever.py",
      "layer": "data",
      "summary": "RetrieveKnowledgeTool.__init__(retriever, max_calls) 方法",
      "tags": [
        "RetrieveKnowledgeTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RetrieveKnowledgeTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/memory/retriever.py",
      "layer": "data",
      "summary": "RetrieveKnowledgeTool.execute() 异步方法",
      "tags": [
        "RetrieveKnowledgeTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SemanticMemory",
      "type": "class",
      "name": "SemanticMemory",
      "filePath": "src/agentkit/memory/semantic.py",
      "layer": "data",
      "summary": "Semantic Memory - 知识库检索",
      "tags": [
        "SemanticMemory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:SemanticMemory.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/semantic.py",
      "layer": "data",
      "summary": "SemanticMemory.__init__(rag_service, graph_service, knowledge_base_ids, search_mode, use_rerank, use_compression, kb_weights) 方法",
      "tags": [
        "SemanticMemory",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SemanticMemory.store",
      "type": "function",
      "name": "store",
      "filePath": "src/agentkit/memory/semantic.py",
      "layer": "data",
      "summary": "SemanticMemory.store(key, value, metadata) 异步方法",
      "tags": [
        "SemanticMemory",
        "store"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SemanticMemory.retrieve",
      "type": "function",
      "name": "retrieve",
      "filePath": "src/agentkit/memory/semantic.py",
      "layer": "data",
      "summary": "SemanticMemory.retrieve(key) 异步方法",
      "tags": [
        "SemanticMemory",
        "retrieve"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SemanticMemory.search",
      "type": "function",
      "name": "search",
      "filePath": "src/agentkit/memory/semantic.py",
      "layer": "data",
      "summary": "SemanticMemory.search(query, top_k, filters) 异步方法",
      "tags": [
        "SemanticMemory",
        "search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SemanticMemory.delete",
      "type": "function",
      "name": "delete",
      "filePath": "src/agentkit/memory/semantic.py",
      "layer": "data",
      "summary": "SemanticMemory.delete(key) 异步方法",
      "tags": [
        "SemanticMemory",
        "delete"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:WorkingMemory",
      "type": "class",
      "name": "WorkingMemory",
      "filePath": "src/agentkit/memory/working.py",
      "layer": "data",
      "summary": "Working Memory - 当前任务的上下文和中间状态",
      "tags": [
        "WorkingMemory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:WorkingMemory.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/memory/working.py",
      "layer": "data",
      "summary": "WorkingMemory.__init__(redis, key_prefix, default_ttl) 方法",
      "tags": [
        "WorkingMemory",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkingMemory._make_key",
      "type": "function",
      "name": "_make_key",
      "filePath": "src/agentkit/memory/working.py",
      "layer": "data",
      "summary": "WorkingMemory._make_key(key) 方法",
      "tags": [
        "WorkingMemory",
        "_make_key"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkingMemory.store",
      "type": "function",
      "name": "store",
      "filePath": "src/agentkit/memory/working.py",
      "layer": "data",
      "summary": "WorkingMemory.store(key, value, metadata) 异步方法",
      "tags": [
        "WorkingMemory",
        "store"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkingMemory.retrieve",
      "type": "function",
      "name": "retrieve",
      "filePath": "src/agentkit/memory/working.py",
      "layer": "data",
      "summary": "WorkingMemory.retrieve(key) 异步方法",
      "tags": [
        "WorkingMemory",
        "retrieve"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkingMemory.search",
      "type": "function",
      "name": "search",
      "filePath": "src/agentkit/memory/working.py",
      "layer": "data",
      "summary": "WorkingMemory.search(query, top_k, filters) 异步方法",
      "tags": [
        "WorkingMemory",
        "search"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkingMemory.delete",
      "type": "function",
      "name": "delete",
      "filePath": "src/agentkit/memory/working.py",
      "layer": "data",
      "summary": "WorkingMemory.delete(key) 异步方法",
      "tags": [
        "WorkingMemory",
        "delete"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkingMemory.clear",
      "type": "function",
      "name": "clear",
      "filePath": "src/agentkit/memory/working.py",
      "layer": "data",
      "summary": "WorkingMemory.clear(prefix) 异步方法",
      "tags": [
        "WorkingMemory",
        "clear"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CompletedStep",
      "type": "class",
      "name": "CompletedStep",
      "filePath": "src/agentkit/orchestrator/compensation.py",
      "layer": "service",
      "summary": "Record of a completed step with its compensation",
      "tags": [
        "CompletedStep"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CompensationResult",
      "type": "class",
      "name": "CompensationResult",
      "filePath": "src/agentkit/orchestrator/compensation.py",
      "layer": "service",
      "summary": "Result of compensation execution",
      "tags": [
        "CompensationResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SagaOrchestrator",
      "type": "class",
      "name": "SagaOrchestrator",
      "filePath": "src/agentkit/orchestrator/compensation.py",
      "layer": "service",
      "summary": "Orchestrates LIFO compensation for failed pipelines",
      "tags": [
        "SagaOrchestrator"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:SagaOrchestrator.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/orchestrator/compensation.py",
      "layer": "service",
      "summary": "SagaOrchestrator.__init__(execute_skill_func) 方法",
      "tags": [
        "SagaOrchestrator",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SagaOrchestrator.record_completed",
      "type": "function",
      "name": "record_completed",
      "filePath": "src/agentkit/orchestrator/compensation.py",
      "layer": "service",
      "summary": "SagaOrchestrator.record_completed(step_name, result, compensate_action) 方法",
      "tags": [
        "SagaOrchestrator",
        "record_completed"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SagaOrchestrator.compensate",
      "type": "function",
      "name": "compensate",
      "filePath": "src/agentkit/orchestrator/compensation.py",
      "layer": "service",
      "summary": "SagaOrchestrator.compensate() 异步方法",
      "tags": [
        "SagaOrchestrator",
        "compensate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SagaOrchestrator.clear",
      "type": "function",
      "name": "clear",
      "filePath": "src/agentkit/orchestrator/compensation.py",
      "layer": "service",
      "summary": "SagaOrchestrator.clear() 方法",
      "tags": [
        "SagaOrchestrator",
        "clear"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SagaOrchestrator.completed_steps",
      "type": "function",
      "name": "completed_steps",
      "filePath": "src/agentkit/orchestrator/compensation.py",
      "layer": "service",
      "summary": "SagaOrchestrator.completed_steps() 方法",
      "tags": [
        "SagaOrchestrator",
        "completed_steps"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:DynamicPipeline",
      "type": "class",
      "name": "DynamicPipeline",
      "filePath": "src/agentkit/orchestrator/dynamic_pipeline.py",
      "layer": "service",
      "summary": "动态 Pipeline 组合器",
      "tags": [
        "DynamicPipeline"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:DynamicPipeline.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/orchestrator/dynamic_pipeline.py",
      "layer": "service",
      "summary": "DynamicPipeline.__init__(engine, loader) 方法",
      "tags": [
        "DynamicPipeline",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DynamicPipeline.execute_conditional",
      "type": "function",
      "name": "execute_conditional",
      "filePath": "src/agentkit/orchestrator/dynamic_pipeline.py",
      "layer": "service",
      "summary": "DynamicPipeline.execute_conditional(pipelines, condition_key, context) 异步方法",
      "tags": [
        "DynamicPipeline",
        "execute_conditional"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DynamicPipeline.execute_nested",
      "type": "function",
      "name": "execute_nested",
      "filePath": "src/agentkit/orchestrator/dynamic_pipeline.py",
      "layer": "service",
      "summary": "DynamicPipeline.execute_nested(parent, sub_pipeline_map, context) 异步方法",
      "tags": [
        "DynamicPipeline",
        "execute_nested"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DynamicPipeline.execute_loop",
      "type": "function",
      "name": "execute_loop",
      "filePath": "src/agentkit/orchestrator/dynamic_pipeline.py",
      "layer": "service",
      "summary": "DynamicPipeline.execute_loop(pipeline, max_iterations, exit_condition, context) 异步方法",
      "tags": [
        "DynamicPipeline",
        "execute_loop"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:HandoffManager",
      "type": "class",
      "name": "HandoffManager",
      "filePath": "src/agentkit/orchestrator/handoff.py",
      "layer": "service",
      "summary": "Handoff 管理器",
      "tags": [
        "HandoffManager"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:HandoffManager.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/orchestrator/handoff.py",
      "layer": "service",
      "summary": "HandoffManager.__init__(redis, dispatcher) 方法",
      "tags": [
        "HandoffManager",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HandoffManager.register_handler",
      "type": "function",
      "name": "register_handler",
      "filePath": "src/agentkit/orchestrator/handoff.py",
      "layer": "service",
      "summary": "HandoffManager.register_handler(agent_name, handler) 方法",
      "tags": [
        "HandoffManager",
        "register_handler"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HandoffManager.send_handoff",
      "type": "function",
      "name": "send_handoff",
      "filePath": "src/agentkit/orchestrator/handoff.py",
      "layer": "service",
      "summary": "HandoffManager.send_handoff(handoff) 异步方法",
      "tags": [
        "HandoffManager",
        "send_handoff"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HandoffManager.listen_for_handoffs",
      "type": "function",
      "name": "listen_for_handoffs",
      "filePath": "src/agentkit/orchestrator/handoff.py",
      "layer": "service",
      "summary": "HandoffManager.listen_for_handoffs(agent_name) 异步方法",
      "tags": [
        "HandoffManager",
        "listen_for_handoffs"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HandoffManager._handle_handoff",
      "type": "function",
      "name": "_handle_handoff",
      "filePath": "src/agentkit/orchestrator/handoff.py",
      "layer": "service",
      "summary": "HandoffManager._handle_handoff(handoff) 异步方法",
      "tags": [
        "HandoffManager",
        "_handle_handoff"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PipelineEngine",
      "type": "class",
      "name": "PipelineEngine",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "Pipeline 执行引擎",
      "tags": [
        "PipelineEngine"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:PipelineEngine.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "PipelineEngine.__init__(dispatcher, state_manager, llm_gateway) 方法",
      "tags": [
        "PipelineEngine",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineEngine.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "PipelineEngine.execute(pipeline, context, adaptive_config) 异步方法",
      "tags": [
        "PipelineEngine",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineEngine._adaptive_loop",
      "type": "function",
      "name": "_adaptive_loop",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "PipelineEngine._adaptive_loop(pipeline, context, failed_result, adaptive_config) 异步方法",
      "tags": [
        "PipelineEngine",
        "_adaptive_loop"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineEngine._execute_pipeline",
      "type": "function",
      "name": "_execute_pipeline",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "PipelineEngine._execute_pipeline(pipeline, context) 异步方法",
      "tags": [
        "PipelineEngine",
        "_execute_pipeline"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineEngine._execute_stage",
      "type": "function",
      "name": "_execute_stage",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "PipelineEngine._execute_stage(stage, pipeline_result, saga) 异步方法",
      "tags": [
        "PipelineEngine",
        "_execute_stage"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineEngine._topological_group",
      "type": "function",
      "name": "_topological_group",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "PipelineEngine._topological_group(stages) 方法",
      "tags": [
        "PipelineEngine",
        "_topological_group"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineEngine._resolve_variables",
      "type": "function",
      "name": "_resolve_variables",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "PipelineEngine._resolve_variables(template, context) 方法",
      "tags": [
        "PipelineEngine",
        "_resolve_variables"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineEngine._get_nested",
      "type": "function",
      "name": "_get_nested",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "PipelineEngine._get_nested(data, path) 方法",
      "tags": [
        "PipelineEngine",
        "_get_nested"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineEngine._evaluate_condition",
      "type": "function",
      "name": "_evaluate_condition",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "PipelineEngine._evaluate_condition(condition, variables) 方法",
      "tags": [
        "PipelineEngine",
        "_evaluate_condition"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineEngine._execute_stage_with_adversarial",
      "type": "function",
      "name": "_execute_stage_with_adversarial",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "PipelineEngine._execute_stage_with_adversarial(stage, pipeline_result, saga, started_at) 异步方法",
      "tags": [
        "PipelineEngine",
        "_execute_stage_with_adversarial"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineEngine._execute_agent_stage",
      "type": "function",
      "name": "_execute_agent_stage",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "PipelineEngine._execute_agent_stage(agent_name, action, input_data, stage, started_at, timeout_seconds) 异步方法",
      "tags": [
        "PipelineEngine",
        "_execute_agent_stage"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineEngine._execute_verifier",
      "type": "function",
      "name": "_execute_verifier",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "PipelineEngine._execute_verifier(verifier_name, worker_output, stage, started_at) 异步方法",
      "tags": [
        "PipelineEngine",
        "_execute_verifier"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineEngine._build_feedback_context",
      "type": "function",
      "name": "_build_feedback_context",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "PipelineEngine._build_feedback_context(feedback, feedback_mode) 方法",
      "tags": [
        "PipelineEngine",
        "_build_feedback_context"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineEngine._escalate",
      "type": "function",
      "name": "_escalate",
      "filePath": "src/agentkit/orchestrator/pipeline_engine.py",
      "layer": "service",
      "summary": "PipelineEngine._escalate(stage, worker_result, adversarial_state, started_at) 异步方法",
      "tags": [
        "PipelineEngine",
        "_escalate"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PipelineLoader",
      "type": "class",
      "name": "PipelineLoader",
      "filePath": "src/agentkit/orchestrator/pipeline_loader.py",
      "layer": "service",
      "summary": "Pipeline YAML 加载器",
      "tags": [
        "PipelineLoader"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:PipelineLoader.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/orchestrator/pipeline_loader.py",
      "layer": "service",
      "summary": "PipelineLoader.__init__(pipelines_dir) 方法",
      "tags": [
        "PipelineLoader",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineLoader.load",
      "type": "function",
      "name": "load",
      "filePath": "src/agentkit/orchestrator/pipeline_loader.py",
      "layer": "service",
      "summary": "PipelineLoader.load(pipeline_name) 方法",
      "tags": [
        "PipelineLoader",
        "load"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineLoader.load_from_yaml",
      "type": "function",
      "name": "load_from_yaml",
      "filePath": "src/agentkit/orchestrator/pipeline_loader.py",
      "layer": "service",
      "summary": "PipelineLoader.load_from_yaml(yaml_content, pipeline_name) 方法",
      "tags": [
        "PipelineLoader",
        "load_from_yaml"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineLoader.validate_dag",
      "type": "function",
      "name": "validate_dag",
      "filePath": "src/agentkit/orchestrator/pipeline_loader.py",
      "layer": "service",
      "summary": "PipelineLoader.validate_dag(stages) 方法",
      "tags": [
        "PipelineLoader",
        "validate_dag"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Base",
      "type": "class",
      "name": "Base",
      "filePath": "src/agentkit/orchestrator/pipeline_models.py",
      "layer": "service",
      "summary": "Base类，继承自DeclarativeBase",
      "tags": [
        "Base"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PipelineExecutionModel",
      "type": "class",
      "name": "PipelineExecutionModel",
      "filePath": "src/agentkit/orchestrator/pipeline_models.py",
      "layer": "service",
      "summary": "Pipeline execution record — persisted final state.",
      "tags": [
        "PipelineExecutionModel"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PipelineStepHistoryModel",
      "type": "class",
      "name": "PipelineStepHistoryModel",
      "filePath": "src/agentkit/orchestrator/pipeline_models.py",
      "layer": "service",
      "summary": "Step execution history — audit trail.",
      "tags": [
        "PipelineStepHistoryModel"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:StageStatus",
      "type": "class",
      "name": "StageStatus",
      "filePath": "src/agentkit/orchestrator/pipeline_schema.py",
      "layer": "service",
      "summary": "StageStatus类，继承自str, Enum",
      "tags": [
        "StageStatus"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ReviewIssue",
      "type": "class",
      "name": "ReviewIssue",
      "filePath": "src/agentkit/orchestrator/pipeline_schema.py",
      "layer": "service",
      "summary": "单条审查问题",
      "tags": [
        "ReviewIssue"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ReviewFeedback",
      "type": "class",
      "name": "ReviewFeedback",
      "filePath": "src/agentkit/orchestrator/pipeline_schema.py",
      "layer": "service",
      "summary": "Verifier 返回的结构化审查反馈",
      "tags": [
        "ReviewFeedback"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AdversarialState",
      "type": "class",
      "name": "AdversarialState",
      "filePath": "src/agentkit/orchestrator/pipeline_schema.py",
      "layer": "service",
      "summary": "对抗轮次状态追踪",
      "tags": [
        "AdversarialState"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PipelineStage",
      "type": "class",
      "name": "PipelineStage",
      "filePath": "src/agentkit/orchestrator/pipeline_schema.py",
      "layer": "service",
      "summary": "PipelineStage类，继承自BaseModel",
      "tags": [
        "PipelineStage"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Pipeline",
      "type": "class",
      "name": "Pipeline",
      "filePath": "src/agentkit/orchestrator/pipeline_schema.py",
      "layer": "service",
      "summary": "Pipeline类，继承自BaseModel",
      "tags": [
        "Pipeline"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:StageResult",
      "type": "class",
      "name": "StageResult",
      "filePath": "src/agentkit/orchestrator/pipeline_schema.py",
      "layer": "service",
      "summary": "StageResult类，继承自BaseModel",
      "tags": [
        "StageResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PipelineResult",
      "type": "class",
      "name": "PipelineResult",
      "filePath": "src/agentkit/orchestrator/pipeline_schema.py",
      "layer": "service",
      "summary": "PipelineResult类，继承自BaseModel",
      "tags": [
        "PipelineResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AdaptiveConfig",
      "type": "class",
      "name": "AdaptiveConfig",
      "filePath": "src/agentkit/orchestrator/pipeline_schema.py",
      "layer": "service",
      "summary": "Configuration for adaptive pipeline execution with reflection-replanning.",
      "tags": [
        "AdaptiveConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ReflectionReport",
      "type": "class",
      "name": "ReflectionReport",
      "filePath": "src/agentkit/orchestrator/pipeline_schema.py",
      "layer": "service",
      "summary": "Structured report from pipeline reflection analysis.",
      "tags": [
        "ReflectionReport"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PipelineStateMemory",
      "type": "class",
      "name": "PipelineStateMemory",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "In-memory pipeline state storage (testing / fallback).",
      "tags": [
        "PipelineStateMemory"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:PipelineStateMemory.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateMemory.__init__() 方法",
      "tags": [
        "PipelineStateMemory",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateMemory.create_execution",
      "type": "function",
      "name": "create_execution",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateMemory.create_execution(pipeline_name, steps, input_data, tenant_id) 异步方法",
      "tags": [
        "PipelineStateMemory",
        "create_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateMemory.update_step",
      "type": "function",
      "name": "update_step",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateMemory.update_step(execution_id, step_name, status, output, error, duration_ms) 异步方法",
      "tags": [
        "PipelineStateMemory",
        "update_step"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateMemory.complete_execution",
      "type": "function",
      "name": "complete_execution",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateMemory.complete_execution(execution_id, final_output) 异步方法",
      "tags": [
        "PipelineStateMemory",
        "complete_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateMemory.fail_execution",
      "type": "function",
      "name": "fail_execution",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateMemory.fail_execution(execution_id, step_name, error) 异步方法",
      "tags": [
        "PipelineStateMemory",
        "fail_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateMemory.get_execution",
      "type": "function",
      "name": "get_execution",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateMemory.get_execution(execution_id) 异步方法",
      "tags": [
        "PipelineStateMemory",
        "get_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateMemory.list_executions",
      "type": "function",
      "name": "list_executions",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateMemory.list_executions(status, limit, offset) 异步方法",
      "tags": [
        "PipelineStateMemory",
        "list_executions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateMemory.get_step_history",
      "type": "function",
      "name": "get_step_history",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateMemory.get_step_history(execution_id) 异步方法",
      "tags": [
        "PipelineStateMemory",
        "get_step_history"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateMemory.get_execution_sync",
      "type": "function",
      "name": "get_execution_sync",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateMemory.get_execution_sync(execution_id) 方法",
      "tags": [
        "PipelineStateMemory",
        "get_execution_sync"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PipelineStateRedis",
      "type": "class",
      "name": "PipelineStateRedis",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "Redis-backed pipeline state storage (hot state).",
      "tags": [
        "PipelineStateRedis"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:PipelineStateRedis.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateRedis.__init__(redis_url) 方法",
      "tags": [
        "PipelineStateRedis",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateRedis._get_redis",
      "type": "function",
      "name": "_get_redis",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateRedis._get_redis() 异步方法",
      "tags": [
        "PipelineStateRedis",
        "_get_redis"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateRedis._safe_redis_call",
      "type": "function",
      "name": "_safe_redis_call",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateRedis._safe_redis_call(fn) 异步方法",
      "tags": [
        "PipelineStateRedis",
        "_safe_redis_call"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateRedis._key",
      "type": "function",
      "name": "_key",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateRedis._key(execution_id) 方法",
      "tags": [
        "PipelineStateRedis",
        "_key"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateRedis.create_execution",
      "type": "function",
      "name": "create_execution",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateRedis.create_execution(pipeline_name, steps, input_data, tenant_id) 异步方法",
      "tags": [
        "PipelineStateRedis",
        "create_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateRedis.update_step",
      "type": "function",
      "name": "update_step",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateRedis.update_step(execution_id, step_name, status, output, error, duration_ms) 异步方法",
      "tags": [
        "PipelineStateRedis",
        "update_step"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateRedis.complete_execution",
      "type": "function",
      "name": "complete_execution",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateRedis.complete_execution(execution_id, final_output) 异步方法",
      "tags": [
        "PipelineStateRedis",
        "complete_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateRedis.fail_execution",
      "type": "function",
      "name": "fail_execution",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateRedis.fail_execution(execution_id, step_name, error) 异步方法",
      "tags": [
        "PipelineStateRedis",
        "fail_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateRedis.get_execution",
      "type": "function",
      "name": "get_execution",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateRedis.get_execution(execution_id) 异步方法",
      "tags": [
        "PipelineStateRedis",
        "get_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateRedis.list_executions",
      "type": "function",
      "name": "list_executions",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateRedis.list_executions(status, limit, offset) 异步方法",
      "tags": [
        "PipelineStateRedis",
        "list_executions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateRedis.get_step_history",
      "type": "function",
      "name": "get_step_history",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateRedis.get_step_history(execution_id) 异步方法",
      "tags": [
        "PipelineStateRedis",
        "get_step_history"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateRedis.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateRedis.health_check() 异步方法",
      "tags": [
        "PipelineStateRedis",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateRedis.using_fallback",
      "type": "function",
      "name": "using_fallback",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateRedis.using_fallback() 方法",
      "tags": [
        "PipelineStateRedis",
        "using_fallback"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PipelineStatePG",
      "type": "class",
      "name": "PipelineStatePG",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PostgreSQL cold persistence for pipeline execution records.",
      "tags": [
        "PipelineStatePG"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:PipelineStatePG.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStatePG.__init__(session_factory) 方法",
      "tags": [
        "PipelineStatePG",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStatePG.enabled",
      "type": "function",
      "name": "enabled",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStatePG.enabled() 方法",
      "tags": [
        "PipelineStatePG",
        "enabled"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStatePG.persist_execution",
      "type": "function",
      "name": "persist_execution",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStatePG.persist_execution(state) 异步方法",
      "tags": [
        "PipelineStatePG",
        "persist_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStatePG.persist_step_history",
      "type": "function",
      "name": "persist_step_history",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStatePG.persist_step_history(execution_id, steps) 异步方法",
      "tags": [
        "PipelineStatePG",
        "persist_step_history"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStatePG.query_executions",
      "type": "function",
      "name": "query_executions",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStatePG.query_executions(pipeline_name, status, limit, offset) 异步方法",
      "tags": [
        "PipelineStatePG",
        "query_executions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStatePG.get_execution",
      "type": "function",
      "name": "get_execution",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStatePG.get_execution(execution_id) 异步方法",
      "tags": [
        "PipelineStatePG",
        "get_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStatePG._model_to_dict",
      "type": "function",
      "name": "_model_to_dict",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStatePG._model_to_dict(model) 方法",
      "tags": [
        "PipelineStatePG",
        "_model_to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PipelineStateManager",
      "type": "class",
      "name": "PipelineStateManager",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "Unified pipeline state manager — Redis hot + PG cold.",
      "tags": [
        "PipelineStateManager"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:PipelineStateManager.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateManager.__init__(redis_url, session_factory) 方法",
      "tags": [
        "PipelineStateManager",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateManager.hot_store",
      "type": "function",
      "name": "hot_store",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateManager.hot_store() 方法",
      "tags": [
        "PipelineStateManager",
        "hot_store"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateManager.cold_store",
      "type": "function",
      "name": "cold_store",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateManager.cold_store() 方法",
      "tags": [
        "PipelineStateManager",
        "cold_store"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateManager.create_execution",
      "type": "function",
      "name": "create_execution",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateManager.create_execution(pipeline_name, steps, input_data, tenant_id) 异步方法",
      "tags": [
        "PipelineStateManager",
        "create_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateManager.update_step",
      "type": "function",
      "name": "update_step",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateManager.update_step(execution_id, step_name, status, output, error, duration_ms) 异步方法",
      "tags": [
        "PipelineStateManager",
        "update_step"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateManager.complete_execution",
      "type": "function",
      "name": "complete_execution",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateManager.complete_execution(execution_id, final_output) 异步方法",
      "tags": [
        "PipelineStateManager",
        "complete_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateManager.fail_execution",
      "type": "function",
      "name": "fail_execution",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateManager.fail_execution(execution_id, step_name, error) 异步方法",
      "tags": [
        "PipelineStateManager",
        "fail_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateManager.get_execution",
      "type": "function",
      "name": "get_execution",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateManager.get_execution(execution_id) 异步方法",
      "tags": [
        "PipelineStateManager",
        "get_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateManager.list_executions",
      "type": "function",
      "name": "list_executions",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateManager.list_executions(status, limit, offset) 异步方法",
      "tags": [
        "PipelineStateManager",
        "list_executions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateManager.get_step_history",
      "type": "function",
      "name": "get_step_history",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateManager.get_step_history(execution_id) 异步方法",
      "tags": [
        "PipelineStateManager",
        "get_step_history"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineStateManager.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/orchestrator/pipeline_state.py",
      "layer": "service",
      "summary": "PipelineStateManager.health_check() 异步方法",
      "tags": [
        "PipelineStateManager",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PipelineReflector",
      "type": "class",
      "name": "PipelineReflector",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "分析 Pipeline 执行失败原因，生成结构化反思报告。",
      "tags": [
        "PipelineReflector"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:PipelineReflector.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "PipelineReflector.__init__(llm_gateway) 方法",
      "tags": [
        "PipelineReflector",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineReflector.reflect",
      "type": "function",
      "name": "reflect",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "PipelineReflector.reflect(pipeline, result, reflection_number) 异步方法",
      "tags": [
        "PipelineReflector",
        "reflect"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineReflector._find_failure",
      "type": "function",
      "name": "_find_failure",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "PipelineReflector._find_failure(result) 方法",
      "tags": [
        "PipelineReflector",
        "_find_failure"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineReflector._collect_completed_outputs",
      "type": "function",
      "name": "_collect_completed_outputs",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "PipelineReflector._collect_completed_outputs(result) 方法",
      "tags": [
        "PipelineReflector",
        "_collect_completed_outputs"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineReflector._llm_reflect",
      "type": "function",
      "name": "_llm_reflect",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "PipelineReflector._llm_reflect(pipeline, failed_stage, error_message, completed_outputs, reflection_number) 异步方法",
      "tags": [
        "PipelineReflector",
        "_llm_reflect"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineReflector._build_reflection_prompt",
      "type": "function",
      "name": "_build_reflection_prompt",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "PipelineReflector._build_reflection_prompt(pipeline, failed_stage, error_message, completed_outputs, reflection_number) 方法",
      "tags": [
        "PipelineReflector",
        "_build_reflection_prompt"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineReflector._parse_reflection_response",
      "type": "function",
      "name": "_parse_reflection_response",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "PipelineReflector._parse_reflection_response(content, failed_stage, reflection_number) 方法",
      "tags": [
        "PipelineReflector",
        "_parse_reflection_response"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineReflector._rule_based_reflect",
      "type": "function",
      "name": "_rule_based_reflect",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "PipelineReflector._rule_based_reflect(failed_stage, error_message, reflection_number) 方法",
      "tags": [
        "PipelineReflector",
        "_rule_based_reflect"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PipelineReplanner",
      "type": "class",
      "name": "PipelineReplanner",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "基于反思报告生成修正后的 Pipeline。",
      "tags": [
        "PipelineReplanner"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:PipelineReplanner.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "PipelineReplanner.__init__(llm_gateway) 方法",
      "tags": [
        "PipelineReplanner",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineReplanner.replan",
      "type": "function",
      "name": "replan",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "PipelineReplanner.replan(pipeline, result, report) 异步方法",
      "tags": [
        "PipelineReplanner",
        "replan"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineReplanner._llm_replan",
      "type": "function",
      "name": "_llm_replan",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "PipelineReplanner._llm_replan(pipeline, result, report) 异步方法",
      "tags": [
        "PipelineReplanner",
        "_llm_replan"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineReplanner._parse_pipeline_response",
      "type": "function",
      "name": "_parse_pipeline_response",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "PipelineReplanner._parse_pipeline_response(content, original) 方法",
      "tags": [
        "PipelineReplanner",
        "_parse_pipeline_response"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineReplanner._rule_based_replan",
      "type": "function",
      "name": "_rule_based_replan",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "PipelineReplanner._rule_based_replan(pipeline, result, report) 方法",
      "tags": [
        "PipelineReplanner",
        "_rule_based_replan"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PipelineReplanner._adjust_failed_stage",
      "type": "function",
      "name": "_adjust_failed_stage",
      "filePath": "src/agentkit/orchestrator/reflection.py",
      "layer": "service",
      "summary": "PipelineReplanner._adjust_failed_stage(stage, report) 方法",
      "tags": [
        "PipelineReplanner",
        "_adjust_failed_stage"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:StepRetryPolicy",
      "type": "class",
      "name": "StepRetryPolicy",
      "filePath": "src/agentkit/orchestrator/retry.py",
      "layer": "service",
      "summary": "Retry policy for pipeline steps",
      "tags": [
        "StepRetryPolicy"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:StepRetryPolicy.calculate_delay",
      "type": "function",
      "name": "calculate_delay",
      "filePath": "src/agentkit/orchestrator/retry.py",
      "layer": "service",
      "summary": "StepRetryPolicy.calculate_delay(attempt) 方法",
      "tags": [
        "StepRetryPolicy",
        "calculate_delay"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:WorkflowStage",
      "type": "class",
      "name": "WorkflowStage",
      "filePath": "src/agentkit/orchestrator/workflow_schema.py",
      "layer": "service",
      "summary": "A workflow stage extending PipelineStage with type and config.",
      "tags": [
        "WorkflowStage"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:WorkflowDefinition",
      "type": "class",
      "name": "WorkflowDefinition",
      "filePath": "src/agentkit/orchestrator/workflow_schema.py",
      "layer": "service",
      "summary": "Workflow definition extending Pipeline with workflow-specific fields.",
      "tags": [
        "WorkflowDefinition"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:WorkflowExecution",
      "type": "class",
      "name": "WorkflowExecution",
      "filePath": "src/agentkit/orchestrator/workflow_schema.py",
      "layer": "service",
      "summary": "Runtime state of a workflow execution.",
      "tags": [
        "WorkflowExecution"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:WorkflowSummary",
      "type": "class",
      "name": "WorkflowSummary",
      "filePath": "src/agentkit/orchestrator/workflow_schema.py",
      "layer": "service",
      "summary": "Summary for listing workflows.",
      "tags": [
        "WorkflowSummary"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CreateWorkflowRequest",
      "type": "class",
      "name": "CreateWorkflowRequest",
      "filePath": "src/agentkit/orchestrator/workflow_schema.py",
      "layer": "service",
      "summary": "Request body for creating/updating a workflow.",
      "tags": [
        "CreateWorkflowRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ExecuteWorkflowRequest",
      "type": "class",
      "name": "ExecuteWorkflowRequest",
      "filePath": "src/agentkit/orchestrator/workflow_schema.py",
      "layer": "service",
      "summary": "Request body for executing a workflow.",
      "tags": [
        "ExecuteWorkflowRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ApproveRequest",
      "type": "class",
      "name": "ApproveRequest",
      "filePath": "src/agentkit/orchestrator/workflow_schema.py",
      "layer": "service",
      "summary": "Request body for approving a paused approval node.",
      "tags": [
        "ApproveRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentProfile",
      "type": "class",
      "name": "AgentProfile",
      "filePath": "src/agentkit/org/context.py",
      "layer": "unknown",
      "summary": "Agent 档案 - 描述组织中一个 Agent 的能力与状态",
      "tags": [
        "AgentProfile"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:OrganizationContext",
      "type": "class",
      "name": "OrganizationContext",
      "filePath": "src/agentkit/org/context.py",
      "layer": "unknown",
      "summary": "组织上下文 - 管理 Agent 档案与能力矩阵，支持基于能力的 Agent 发现",
      "tags": [
        "OrganizationContext"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:OrganizationContext.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/org/context.py",
      "layer": "unknown",
      "summary": "OrganizationContext.__init__() 方法",
      "tags": [
        "OrganizationContext",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OrganizationContext.register_agent",
      "type": "function",
      "name": "register_agent",
      "filePath": "src/agentkit/org/context.py",
      "layer": "unknown",
      "summary": "OrganizationContext.register_agent(profile) 方法",
      "tags": [
        "OrganizationContext",
        "register_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OrganizationContext.unregister_agent",
      "type": "function",
      "name": "unregister_agent",
      "filePath": "src/agentkit/org/context.py",
      "layer": "unknown",
      "summary": "OrganizationContext.unregister_agent(name) 方法",
      "tags": [
        "OrganizationContext",
        "unregister_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OrganizationContext.get_agent_profile",
      "type": "function",
      "name": "get_agent_profile",
      "filePath": "src/agentkit/org/context.py",
      "layer": "unknown",
      "summary": "OrganizationContext.get_agent_profile(name) 方法",
      "tags": [
        "OrganizationContext",
        "get_agent_profile"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OrganizationContext.list_agents",
      "type": "function",
      "name": "list_agents",
      "filePath": "src/agentkit/org/context.py",
      "layer": "unknown",
      "summary": "OrganizationContext.list_agents() 方法",
      "tags": [
        "OrganizationContext",
        "list_agents"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OrganizationContext.find_best_agent",
      "type": "function",
      "name": "find_best_agent",
      "filePath": "src/agentkit/org/context.py",
      "layer": "unknown",
      "summary": "OrganizationContext.find_best_agent(required_capabilities, exclude) 方法",
      "tags": [
        "OrganizationContext",
        "find_best_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OrganizationContext.update_load",
      "type": "function",
      "name": "update_load",
      "filePath": "src/agentkit/org/context.py",
      "layer": "unknown",
      "summary": "OrganizationContext.update_load(name, delta) 方法",
      "tags": [
        "OrganizationContext",
        "update_load"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OrganizationContext.set_availability",
      "type": "function",
      "name": "set_availability",
      "filePath": "src/agentkit/org/context.py",
      "layer": "unknown",
      "summary": "OrganizationContext.set_availability(name, available) 方法",
      "tags": [
        "OrganizationContext",
        "set_availability"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OrganizationContext.from_agent_pool",
      "type": "function",
      "name": "from_agent_pool",
      "filePath": "src/agentkit/org/context.py",
      "layer": "unknown",
      "summary": "OrganizationContext.from_agent_pool(cls, agent_pool, skill_registry) 方法",
      "tags": [
        "OrganizationContext",
        "from_agent_pool"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentDiscovery",
      "type": "class",
      "name": "AgentDiscovery",
      "filePath": "src/agentkit/org/discovery.py",
      "layer": "unknown",
      "summary": "Agent 发现 - 提供多种维度的 Agent 查询与推荐",
      "tags": [
        "AgentDiscovery"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:AgentDiscovery.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/org/discovery.py",
      "layer": "unknown",
      "summary": "AgentDiscovery.__init__(org_context) 方法",
      "tags": [
        "AgentDiscovery",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentDiscovery.discover_by_capability",
      "type": "function",
      "name": "discover_by_capability",
      "filePath": "src/agentkit/org/discovery.py",
      "layer": "unknown",
      "summary": "AgentDiscovery.discover_by_capability(required_capabilities) 方法",
      "tags": [
        "AgentDiscovery",
        "discover_by_capability"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentDiscovery.discover_by_execution_mode",
      "type": "function",
      "name": "discover_by_execution_mode",
      "filePath": "src/agentkit/org/discovery.py",
      "layer": "unknown",
      "summary": "AgentDiscovery.discover_by_execution_mode(mode) 方法",
      "tags": [
        "AgentDiscovery",
        "discover_by_execution_mode"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentDiscovery.discover_available",
      "type": "function",
      "name": "discover_available",
      "filePath": "src/agentkit/org/discovery.py",
      "layer": "unknown",
      "summary": "AgentDiscovery.discover_available() 方法",
      "tags": [
        "AgentDiscovery",
        "discover_available"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentDiscovery.recommend_agent",
      "type": "function",
      "name": "recommend_agent",
      "filePath": "src/agentkit/org/discovery.py",
      "layer": "unknown",
      "summary": "AgentDiscovery.recommend_agent(required_capabilities, preferred_mode) 方法",
      "tags": [
        "AgentDiscovery",
        "recommend_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PromptSection",
      "type": "class",
      "name": "PromptSection",
      "filePath": "src/agentkit/prompts/section.py",
      "layer": "utility",
      "summary": "Prompt 段落定义",
      "tags": [
        "PromptSection"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PromptSection.render",
      "type": "function",
      "name": "render",
      "filePath": "src/agentkit/prompts/section.py",
      "layer": "utility",
      "summary": "PromptSection.render(variables) 方法",
      "tags": [
        "PromptSection",
        "render"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PromptTemplate",
      "type": "class",
      "name": "PromptTemplate",
      "filePath": "src/agentkit/prompts/template.py",
      "layer": "utility",
      "summary": "Prompt 模板",
      "tags": [
        "PromptTemplate"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:PromptTemplate.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/prompts/template.py",
      "layer": "utility",
      "summary": "PromptTemplate.__init__(sections, name, version) 方法",
      "tags": [
        "PromptTemplate",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PromptTemplate.render",
      "type": "function",
      "name": "render",
      "filePath": "src/agentkit/prompts/template.py",
      "layer": "utility",
      "summary": "PromptTemplate.render(variables, context_budget) 方法",
      "tags": [
        "PromptTemplate",
        "render"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PromptTemplate.sections",
      "type": "function",
      "name": "sections",
      "filePath": "src/agentkit/prompts/template.py",
      "layer": "utility",
      "summary": "PromptTemplate.sections() 方法",
      "tags": [
        "PromptTemplate",
        "sections"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PromptTemplate.render_cached",
      "type": "function",
      "name": "render_cached",
      "filePath": "src/agentkit/prompts/template.py",
      "layer": "utility",
      "summary": "PromptTemplate.render_cached(variables) 方法",
      "tags": [
        "PromptTemplate",
        "render_cached"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PromptTemplate.clear_cache",
      "type": "function",
      "name": "clear_cache",
      "filePath": "src/agentkit/prompts/template.py",
      "layer": "utility",
      "summary": "PromptTemplate.clear_cache() 方法",
      "tags": [
        "PromptTemplate",
        "clear_cache"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AlignmentConfig",
      "type": "class",
      "name": "AlignmentConfig",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "对齐守卫配置",
      "tags": [
        "AlignmentConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AlignmentConfig.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "AlignmentConfig.from_dict(cls, data) 方法",
      "tags": [
        "AlignmentConfig",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AlignmentCheckResult",
      "type": "class",
      "name": "AlignmentCheckResult",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "对齐检查结果",
      "tags": [
        "AlignmentCheckResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CascadeAlert",
      "type": "class",
      "name": "CascadeAlert",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "级联故障告警",
      "tags": [
        "CascadeAlert"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ConstraintInjector",
      "type": "class",
      "name": "ConstraintInjector",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "将全局约束注入到任务 input_data 中",
      "tags": [
        "ConstraintInjector"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConstraintInjector.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "ConstraintInjector.__init__(config) 方法",
      "tags": [
        "ConstraintInjector",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConstraintInjector.inject",
      "type": "function",
      "name": "inject",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "ConstraintInjector.inject(input_data) 方法",
      "tags": [
        "ConstraintInjector",
        "inject"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AlignmentGuard",
      "type": "class",
      "name": "AlignmentGuard",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "对齐守卫 — 扩展 QualityGate，增加约束注入和级联检测",
      "tags": [
        "AlignmentGuard"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:AlignmentGuard.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "AlignmentGuard.__init__(config, llm_gateway) 方法",
      "tags": [
        "AlignmentGuard",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AlignmentGuard.inject_constraints",
      "type": "function",
      "name": "inject_constraints",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "AlignmentGuard.inject_constraints(input_data) 方法",
      "tags": [
        "AlignmentGuard",
        "inject_constraints"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AlignmentGuard.check_output",
      "type": "function",
      "name": "check_output",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "AlignmentGuard.check_output(output, constraints) 异步方法",
      "tags": [
        "AlignmentGuard",
        "check_output"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AlignmentGuard._rule_check",
      "type": "function",
      "name": "_rule_check",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "AlignmentGuard._rule_check(output, constraints) 方法",
      "tags": [
        "AlignmentGuard",
        "_rule_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AlignmentGuard._is_positive_mention",
      "type": "function",
      "name": "_is_positive_mention",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "AlignmentGuard._is_positive_mention(content, keyword) 方法",
      "tags": [
        "AlignmentGuard",
        "_is_positive_mention"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AlignmentGuard._extract_text",
      "type": "function",
      "name": "_extract_text",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "AlignmentGuard._extract_text(output) 方法",
      "tags": [
        "AlignmentGuard",
        "_extract_text"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AlignmentGuard._llm_check",
      "type": "function",
      "name": "_llm_check",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "AlignmentGuard._llm_check(output, constraints) 异步方法",
      "tags": [
        "AlignmentGuard",
        "_llm_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AlignmentGuard.record_interaction",
      "type": "function",
      "name": "record_interaction",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "AlignmentGuard.record_interaction(session_id) 方法",
      "tags": [
        "AlignmentGuard",
        "record_interaction"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AlignmentGuard.record_loop_depth",
      "type": "function",
      "name": "record_loop_depth",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "AlignmentGuard.record_loop_depth(session_id, depth) 方法",
      "tags": [
        "AlignmentGuard",
        "record_loop_depth"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AlignmentGuard.reset_session",
      "type": "function",
      "name": "reset_session",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "AlignmentGuard.reset_session(session_id) 方法",
      "tags": [
        "AlignmentGuard",
        "reset_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AlignmentGuard.get_interaction_count",
      "type": "function",
      "name": "get_interaction_count",
      "filePath": "src/agentkit/quality/alignment.py",
      "layer": "utility",
      "summary": "AlignmentGuard.get_interaction_count(session_id) 方法",
      "tags": [
        "AlignmentGuard",
        "get_interaction_count"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CascadeAlert",
      "type": "class",
      "name": "CascadeAlert",
      "filePath": "src/agentkit/quality/cascade_detector.py",
      "layer": "utility",
      "summary": "级联故障告警",
      "tags": [
        "CascadeAlert"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CascadeDetector",
      "type": "class",
      "name": "CascadeDetector",
      "filePath": "src/agentkit/quality/cascade_detector.py",
      "layer": "utility",
      "summary": "检测多 agent 交互中的级联故障",
      "tags": [
        "CascadeDetector"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:CascadeDetector.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/quality/cascade_detector.py",
      "layer": "utility",
      "summary": "CascadeDetector.__init__(max_interactions, max_depth, store) 方法",
      "tags": [
        "CascadeDetector",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CascadeDetector.check_interaction",
      "type": "function",
      "name": "check_interaction",
      "filePath": "src/agentkit/quality/cascade_detector.py",
      "layer": "utility",
      "summary": "CascadeDetector.check_interaction(session_id) 方法",
      "tags": [
        "CascadeDetector",
        "check_interaction"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CascadeDetector.check_depth",
      "type": "function",
      "name": "check_depth",
      "filePath": "src/agentkit/quality/cascade_detector.py",
      "layer": "utility",
      "summary": "CascadeDetector.check_depth(session_id, depth) 方法",
      "tags": [
        "CascadeDetector",
        "check_depth"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CascadeDetector.reset",
      "type": "function",
      "name": "reset",
      "filePath": "src/agentkit/quality/cascade_detector.py",
      "layer": "utility",
      "summary": "CascadeDetector.reset(session_id) 方法",
      "tags": [
        "CascadeDetector",
        "reset"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CascadeDetector.get_stats",
      "type": "function",
      "name": "get_stats",
      "filePath": "src/agentkit/quality/cascade_detector.py",
      "layer": "utility",
      "summary": "CascadeDetector.get_stats(session_id) 方法",
      "tags": [
        "CascadeDetector",
        "get_stats"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CascadeStateStore",
      "type": "class",
      "name": "CascadeStateStore",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "Persistent cascade detection state interface.",
      "tags": [
        "CascadeStateStore"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:CascadeStateStore.increment_interaction",
      "type": "function",
      "name": "increment_interaction",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "CascadeStateStore.increment_interaction(session_id) 方法",
      "tags": [
        "CascadeStateStore",
        "increment_interaction"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CascadeStateStore.get_interaction",
      "type": "function",
      "name": "get_interaction",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "CascadeStateStore.get_interaction(session_id) 方法",
      "tags": [
        "CascadeStateStore",
        "get_interaction"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CascadeStateStore.set_depth",
      "type": "function",
      "name": "set_depth",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "CascadeStateStore.set_depth(session_id, depth) 方法",
      "tags": [
        "CascadeStateStore",
        "set_depth"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CascadeStateStore.get_depth",
      "type": "function",
      "name": "get_depth",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "CascadeStateStore.get_depth(session_id) 方法",
      "tags": [
        "CascadeStateStore",
        "get_depth"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:CascadeStateStore.reset",
      "type": "function",
      "name": "reset",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "CascadeStateStore.reset(session_id) 方法",
      "tags": [
        "CascadeStateStore",
        "reset"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:InMemoryCascadeStateStore",
      "type": "class",
      "name": "InMemoryCascadeStateStore",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "In-memory cascade state store (default, process-local).",
      "tags": [
        "InMemoryCascadeStateStore"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:InMemoryCascadeStateStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "InMemoryCascadeStateStore.__init__(session_ttl) 方法",
      "tags": [
        "InMemoryCascadeStateStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryCascadeStateStore._is_expired",
      "type": "function",
      "name": "_is_expired",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "InMemoryCascadeStateStore._is_expired(session_id) 方法",
      "tags": [
        "InMemoryCascadeStateStore",
        "_is_expired"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryCascadeStateStore._cleanup_expired",
      "type": "function",
      "name": "_cleanup_expired",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "InMemoryCascadeStateStore._cleanup_expired() 方法",
      "tags": [
        "InMemoryCascadeStateStore",
        "_cleanup_expired"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryCascadeStateStore._touch",
      "type": "function",
      "name": "_touch",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "InMemoryCascadeStateStore._touch(session_id) 方法",
      "tags": [
        "InMemoryCascadeStateStore",
        "_touch"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryCascadeStateStore.increment_interaction",
      "type": "function",
      "name": "increment_interaction",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "InMemoryCascadeStateStore.increment_interaction(session_id) 方法",
      "tags": [
        "InMemoryCascadeStateStore",
        "increment_interaction"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryCascadeStateStore.get_interaction",
      "type": "function",
      "name": "get_interaction",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "InMemoryCascadeStateStore.get_interaction(session_id) 方法",
      "tags": [
        "InMemoryCascadeStateStore",
        "get_interaction"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryCascadeStateStore.set_depth",
      "type": "function",
      "name": "set_depth",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "InMemoryCascadeStateStore.set_depth(session_id, depth) 方法",
      "tags": [
        "InMemoryCascadeStateStore",
        "set_depth"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryCascadeStateStore.get_depth",
      "type": "function",
      "name": "get_depth",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "InMemoryCascadeStateStore.get_depth(session_id) 方法",
      "tags": [
        "InMemoryCascadeStateStore",
        "get_depth"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryCascadeStateStore.reset",
      "type": "function",
      "name": "reset",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "InMemoryCascadeStateStore.reset(session_id) 方法",
      "tags": [
        "InMemoryCascadeStateStore",
        "reset"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RedisCascadeStateStore",
      "type": "class",
      "name": "RedisCascadeStateStore",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "Redis-backed cascade state store using INCR for atomic increments.",
      "tags": [
        "RedisCascadeStateStore"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:RedisCascadeStateStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "RedisCascadeStateStore.__init__(redis_url, session_ttl) 方法",
      "tags": [
        "RedisCascadeStateStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisCascadeStateStore._get_sync_redis",
      "type": "function",
      "name": "_get_sync_redis",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "RedisCascadeStateStore._get_sync_redis() 方法",
      "tags": [
        "RedisCascadeStateStore",
        "_get_sync_redis"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisCascadeStateStore._degrade_to_fallback",
      "type": "function",
      "name": "_degrade_to_fallback",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "RedisCascadeStateStore._degrade_to_fallback() 方法",
      "tags": [
        "RedisCascadeStateStore",
        "_degrade_to_fallback"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisCascadeStateStore.increment_interaction",
      "type": "function",
      "name": "increment_interaction",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "RedisCascadeStateStore.increment_interaction(session_id) 方法",
      "tags": [
        "RedisCascadeStateStore",
        "increment_interaction"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisCascadeStateStore.get_interaction",
      "type": "function",
      "name": "get_interaction",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "RedisCascadeStateStore.get_interaction(session_id) 方法",
      "tags": [
        "RedisCascadeStateStore",
        "get_interaction"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisCascadeStateStore.set_depth",
      "type": "function",
      "name": "set_depth",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "RedisCascadeStateStore.set_depth(session_id, depth) 方法",
      "tags": [
        "RedisCascadeStateStore",
        "set_depth"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisCascadeStateStore.get_depth",
      "type": "function",
      "name": "get_depth",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "RedisCascadeStateStore.get_depth(session_id) 方法",
      "tags": [
        "RedisCascadeStateStore",
        "get_depth"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisCascadeStateStore.reset",
      "type": "function",
      "name": "reset",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "RedisCascadeStateStore.reset(session_id) 方法",
      "tags": [
        "RedisCascadeStateStore",
        "reset"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisCascadeStateStore.close",
      "type": "function",
      "name": "close",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "RedisCascadeStateStore.close() 方法",
      "tags": [
        "RedisCascadeStateStore",
        "close"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:QualityCheck",
      "type": "class",
      "name": "QualityCheck",
      "filePath": "src/agentkit/quality/gate.py",
      "layer": "utility",
      "summary": "单条质量检查结果",
      "tags": [
        "QualityCheck"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:QualityResult",
      "type": "class",
      "name": "QualityResult",
      "filePath": "src/agentkit/quality/gate.py",
      "layer": "utility",
      "summary": "质量检查汇总结果",
      "tags": [
        "QualityResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:QualityGate",
      "type": "class",
      "name": "QualityGate",
      "filePath": "src/agentkit/quality/gate.py",
      "layer": "utility",
      "summary": "产出质量管理 — 多维度质量检查",
      "tags": [
        "QualityGate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:QualityGate.validate",
      "type": "function",
      "name": "validate",
      "filePath": "src/agentkit/quality/gate.py",
      "layer": "utility",
      "summary": "QualityGate.validate(output, skill) 异步方法",
      "tags": [
        "QualityGate",
        "validate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:QualityGate._import_validator",
      "type": "function",
      "name": "_import_validator",
      "filePath": "src/agentkit/quality/gate.py",
      "layer": "utility",
      "summary": "QualityGate._import_validator(dotted_path) 方法",
      "tags": [
        "QualityGate",
        "_import_validator"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:OutputMetadata",
      "type": "class",
      "name": "OutputMetadata",
      "filePath": "src/agentkit/quality/output.py",
      "layer": "utility",
      "summary": "输出元数据",
      "tags": [
        "OutputMetadata"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:StandardOutput",
      "type": "class",
      "name": "StandardOutput",
      "filePath": "src/agentkit/quality/output.py",
      "layer": "utility",
      "summary": "标准化输出",
      "tags": [
        "StandardOutput"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:OutputStandardizer",
      "type": "class",
      "name": "OutputStandardizer",
      "filePath": "src/agentkit/quality/output.py",
      "layer": "utility",
      "summary": "标准化输出 — Schema 验证 + 类型归一化 + 元数据",
      "tags": [
        "OutputStandardizer"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:OutputStandardizer.standardize",
      "type": "function",
      "name": "standardize",
      "filePath": "src/agentkit/quality/output.py",
      "layer": "utility",
      "summary": "OutputStandardizer.standardize(raw_output, skill, quality_result) 异步方法",
      "tags": [
        "OutputStandardizer",
        "standardize"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OutputStandardizer._validate_schema",
      "type": "function",
      "name": "_validate_schema",
      "filePath": "src/agentkit/quality/output.py",
      "layer": "utility",
      "summary": "OutputStandardizer._validate_schema(output, schema) 方法",
      "tags": [
        "OutputStandardizer",
        "_validate_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OutputStandardizer._normalize_types",
      "type": "function",
      "name": "_normalize_types",
      "filePath": "src/agentkit/quality/output.py",
      "layer": "utility",
      "summary": "OutputStandardizer._normalize_types(output, schema) 方法",
      "tags": [
        "OutputStandardizer",
        "_normalize_types"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OutputStandardizer._calculate_quality_score",
      "type": "function",
      "name": "_calculate_quality_score",
      "filePath": "src/agentkit/quality/output.py",
      "layer": "utility",
      "summary": "OutputStandardizer._calculate_quality_score(quality_result) 方法",
      "tags": [
        "OutputStandardizer",
        "_calculate_quality_score"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RoutingResult",
      "type": "class",
      "name": "RoutingResult",
      "filePath": "src/agentkit/router/intent.py",
      "layer": "service",
      "summary": "路由结果",
      "tags": [
        "RoutingResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:IntentRouter",
      "type": "class",
      "name": "IntentRouter",
      "filePath": "src/agentkit/router/intent.py",
      "layer": "service",
      "summary": "两级意图路由：关键词匹配 → LLM 分类",
      "tags": [
        "IntentRouter"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:IntentRouter.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/router/intent.py",
      "layer": "service",
      "summary": "IntentRouter.__init__(llm_gateway, model) 方法",
      "tags": [
        "IntentRouter",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:IntentRouter.route",
      "type": "function",
      "name": "route",
      "filePath": "src/agentkit/router/intent.py",
      "layer": "service",
      "summary": "IntentRouter.route(input_data, skills) 异步方法",
      "tags": [
        "IntentRouter",
        "route"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:IntentRouter._match_keywords",
      "type": "function",
      "name": "_match_keywords",
      "filePath": "src/agentkit/router/intent.py",
      "layer": "service",
      "summary": "IntentRouter._match_keywords(input_data, skills) 方法",
      "tags": [
        "IntentRouter",
        "_match_keywords"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:IntentRouter._classify_with_llm",
      "type": "function",
      "name": "_classify_with_llm",
      "filePath": "src/agentkit/router/intent.py",
      "layer": "service",
      "summary": "IntentRouter._classify_with_llm(input_data, skills) 异步方法",
      "tags": [
        "IntentRouter",
        "_classify_with_llm"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:IntentRouter._build_classification_prompt",
      "type": "function",
      "name": "_build_classification_prompt",
      "filePath": "src/agentkit/router/intent.py",
      "layer": "service",
      "summary": "IntentRouter._build_classification_prompt(input_data, skills) 方法",
      "tags": [
        "IntentRouter",
        "_build_classification_prompt"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:IntentRouter._parse_llm_response",
      "type": "function",
      "name": "_parse_llm_response",
      "filePath": "src/agentkit/router/intent.py",
      "layer": "service",
      "summary": "IntentRouter._parse_llm_response(content, skills) 方法",
      "tags": [
        "IntentRouter",
        "_parse_llm_response"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:IntentRouter._extract_skill_name_from_text",
      "type": "function",
      "name": "_extract_skill_name_from_text",
      "filePath": "src/agentkit/router/intent.py",
      "layer": "service",
      "summary": "IntentRouter._extract_skill_name_from_text(text, valid_names) 方法",
      "tags": [
        "IntentRouter",
        "_extract_skill_name_from_text"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:IntentRouter._extract_string_values",
      "type": "function",
      "name": "_extract_string_values",
      "filePath": "src/agentkit/router/intent.py",
      "layer": "service",
      "summary": "IntentRouter._extract_string_values(data) 方法",
      "tags": [
        "IntentRouter",
        "_extract_string_values"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentKitClient",
      "type": "class",
      "name": "AgentKitClient",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "Python SDK for AgentKit Server",
      "tags": [
        "AgentKitClient"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:AgentKitClient.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.__init__(base_url) 方法",
      "tags": [
        "AgentKitClient",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.create_agent",
      "type": "function",
      "name": "create_agent",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.create_agent(skill_name, config) 异步方法",
      "tags": [
        "AgentKitClient",
        "create_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.list_agents",
      "type": "function",
      "name": "list_agents",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.list_agents() 异步方法",
      "tags": [
        "AgentKitClient",
        "list_agents"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.get_agent",
      "type": "function",
      "name": "get_agent",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.get_agent(name) 异步方法",
      "tags": [
        "AgentKitClient",
        "get_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.delete_agent",
      "type": "function",
      "name": "delete_agent",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.delete_agent(name) 异步方法",
      "tags": [
        "AgentKitClient",
        "delete_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.submit_task",
      "type": "function",
      "name": "submit_task",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.submit_task(input_data, skill_name, agent_name) 异步方法",
      "tags": [
        "AgentKitClient",
        "submit_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.register_skill",
      "type": "function",
      "name": "register_skill",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.register_skill(config) 异步方法",
      "tags": [
        "AgentKitClient",
        "register_skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.list_skills",
      "type": "function",
      "name": "list_skills",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.list_skills() 异步方法",
      "tags": [
        "AgentKitClient",
        "list_skills"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.get_usage",
      "type": "function",
      "name": "get_usage",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.get_usage(agent_name) 异步方法",
      "tags": [
        "AgentKitClient",
        "get_usage"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.health",
      "type": "function",
      "name": "health",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.health() 异步方法",
      "tags": [
        "AgentKitClient",
        "health"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.submit_task_async",
      "type": "function",
      "name": "submit_task_async",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.submit_task_async(input_data, skill_name, agent_name) 异步方法",
      "tags": [
        "AgentKitClient",
        "submit_task_async"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.get_task_status",
      "type": "function",
      "name": "get_task_status",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.get_task_status(task_id) 异步方法",
      "tags": [
        "AgentKitClient",
        "get_task_status"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.cancel_task",
      "type": "function",
      "name": "cancel_task",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.cancel_task(task_id) 异步方法",
      "tags": [
        "AgentKitClient",
        "cancel_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.list_tasks",
      "type": "function",
      "name": "list_tasks",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.list_tasks(status, limit) 异步方法",
      "tags": [
        "AgentKitClient",
        "list_tasks"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.stream_task",
      "type": "function",
      "name": "stream_task",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.stream_task(input_data, skill_name, agent_name) 异步方法",
      "tags": [
        "AgentKitClient",
        "stream_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.close",
      "type": "function",
      "name": "close",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.close() 异步方法",
      "tags": [
        "AgentKitClient",
        "close"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.__aenter__",
      "type": "function",
      "name": "__aenter__",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.__aenter__() 异步方法",
      "tags": [
        "AgentKitClient",
        "__aenter__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentKitClient.__aexit__",
      "type": "function",
      "name": "__aexit__",
      "filePath": "src/agentkit/server/client.py",
      "layer": "api",
      "summary": "AgentKitClient.__aexit__() 异步方法",
      "tags": [
        "AgentKitClient",
        "__aexit__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ClientConfig",
      "type": "class",
      "name": "ClientConfig",
      "filePath": "src/agentkit/server/client_config.py",
      "layer": "api",
      "summary": "Manages client-specific configuration overrides",
      "tags": [
        "ClientConfig"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:ClientConfig.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/server/client_config.py",
      "layer": "api",
      "summary": "ClientConfig.__init__(config_dir) 方法",
      "tags": [
        "ClientConfig",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ClientConfig.clients",
      "type": "function",
      "name": "clients",
      "filePath": "src/agentkit/server/client_config.py",
      "layer": "api",
      "summary": "ClientConfig.clients() 方法",
      "tags": [
        "ClientConfig",
        "clients"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ClientConfig._load_clients",
      "type": "function",
      "name": "_load_clients",
      "filePath": "src/agentkit/server/client_config.py",
      "layer": "api",
      "summary": "ClientConfig._load_clients() 方法",
      "tags": [
        "ClientConfig",
        "_load_clients"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ClientConfig.reload",
      "type": "function",
      "name": "reload",
      "filePath": "src/agentkit/server/client_config.py",
      "layer": "api",
      "summary": "ClientConfig.reload() 方法",
      "tags": [
        "ClientConfig",
        "reload"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ClientConfig.identify_client",
      "type": "function",
      "name": "identify_client",
      "filePath": "src/agentkit/server/client_config.py",
      "layer": "api",
      "summary": "ClientConfig.identify_client(api_key) 方法",
      "tags": [
        "ClientConfig",
        "identify_client"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ClientConfig.get_client_config",
      "type": "function",
      "name": "get_client_config",
      "filePath": "src/agentkit/server/client_config.py",
      "layer": "api",
      "summary": "ClientConfig.get_client_config(client_name) 方法",
      "tags": [
        "ClientConfig",
        "get_client_config"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ClientConfig.get_skills_dir",
      "type": "function",
      "name": "get_skills_dir",
      "filePath": "src/agentkit/server/client_config.py",
      "layer": "api",
      "summary": "ClientConfig.get_skills_dir(client_name) 方法",
      "tags": [
        "ClientConfig",
        "get_skills_dir"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ClientConfig._load_default_config",
      "type": "function",
      "name": "_load_default_config",
      "filePath": "src/agentkit/server/client_config.py",
      "layer": "api",
      "summary": "ClientConfig._load_default_config() 方法",
      "tags": [
        "ClientConfig",
        "_load_default_config"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ClientConfig.validate_api_key",
      "type": "function",
      "name": "validate_api_key",
      "filePath": "src/agentkit/server/client_config.py",
      "layer": "api",
      "summary": "ClientConfig.validate_api_key(api_key) 方法",
      "tags": [
        "ClientConfig",
        "validate_api_key"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CreateAgentRequest",
      "type": "class",
      "name": "CreateAgentRequest",
      "filePath": "src/agentkit/server/routes/agents.py",
      "layer": "api",
      "summary": "CreateAgentRequest类，继承自BaseModel",
      "tags": [
        "CreateAgentRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TriggerEvolutionRequest",
      "type": "class",
      "name": "TriggerEvolutionRequest",
      "filePath": "src/agentkit/server/routes/evolution.py",
      "layer": "api",
      "summary": "TriggerEvolutionRequest类，继承自BaseModel",
      "tags": [
        "TriggerEvolutionRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:DashboardExperience",
      "type": "class",
      "name": "DashboardExperience",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "仪表盘展示用的经验记录",
      "tags": [
        "DashboardExperience"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:DashboardOptimization",
      "type": "class",
      "name": "DashboardOptimization",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "仪表盘展示用的路径优化记录",
      "tags": [
        "DashboardOptimization"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RecordExperienceRequest",
      "type": "class",
      "name": "RecordExperienceRequest",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "记录经验请求体",
      "tags": [
        "RecordExperienceRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RecordOptimizationRequest",
      "type": "class",
      "name": "RecordOptimizationRequest",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "记录路径优化请求体",
      "tags": [
        "RecordOptimizationRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:UsageRecordResponse",
      "type": "class",
      "name": "UsageRecordResponse",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "单条用量记录",
      "tags": [
        "UsageRecordResponse"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:UsageSummaryResponse",
      "type": "class",
      "name": "UsageSummaryResponse",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "用量汇总",
      "tags": [
        "UsageSummaryResponse"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:KnowledgeSource",
      "type": "class",
      "name": "KnowledgeSource",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "KnowledgeSource类",
      "tags": [
        "KnowledgeSource"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:UploadedDocument",
      "type": "class",
      "name": "UploadedDocument",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "UploadedDocument类",
      "tags": [
        "UploadedDocument"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:KnowledgeSourceStore",
      "type": "class",
      "name": "KnowledgeSourceStore",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "KnowledgeSourceStore类，包含方法: __init__, add_source, get_source, remove_source, list_sources 等9个方法",
      "tags": [
        "KnowledgeSourceStore"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:KnowledgeSourceStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "KnowledgeSourceStore.__init__(max_sources) 方法",
      "tags": [
        "KnowledgeSourceStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KnowledgeSourceStore.add_source",
      "type": "function",
      "name": "add_source",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "KnowledgeSourceStore.add_source(name, source_type, config) 方法",
      "tags": [
        "KnowledgeSourceStore",
        "add_source"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KnowledgeSourceStore.get_source",
      "type": "function",
      "name": "get_source",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "KnowledgeSourceStore.get_source(source_id) 方法",
      "tags": [
        "KnowledgeSourceStore",
        "get_source"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KnowledgeSourceStore.remove_source",
      "type": "function",
      "name": "remove_source",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "KnowledgeSourceStore.remove_source(source_id) 方法",
      "tags": [
        "KnowledgeSourceStore",
        "remove_source"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KnowledgeSourceStore.list_sources",
      "type": "function",
      "name": "list_sources",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "KnowledgeSourceStore.list_sources() 方法",
      "tags": [
        "KnowledgeSourceStore",
        "list_sources"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KnowledgeSourceStore.add_document",
      "type": "function",
      "name": "add_document",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "KnowledgeSourceStore.add_document(doc) 方法",
      "tags": [
        "KnowledgeSourceStore",
        "add_document"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KnowledgeSourceStore.list_documents",
      "type": "function",
      "name": "list_documents",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "KnowledgeSourceStore.list_documents(source_id) 方法",
      "tags": [
        "KnowledgeSourceStore",
        "list_documents"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KnowledgeSourceStore.delete_document",
      "type": "function",
      "name": "delete_document",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "KnowledgeSourceStore.delete_document(document_id) 方法",
      "tags": [
        "KnowledgeSourceStore",
        "delete_document"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:KnowledgeSourceStore.update_source",
      "type": "function",
      "name": "update_source",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "KnowledgeSourceStore.update_source(source_id, data) 方法",
      "tags": [
        "KnowledgeSourceStore",
        "update_source"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AddSourceRequest",
      "type": "class",
      "name": "AddSourceRequest",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "AddSourceRequest类，继承自BaseModel",
      "tags": [
        "AddSourceRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SearchRequest",
      "type": "class",
      "name": "SearchRequest",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "SearchRequest类，继承自BaseModel",
      "tags": [
        "SearchRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SearchResult",
      "type": "class",
      "name": "SearchResult",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "SearchResult类，继承自BaseModel",
      "tags": [
        "SearchResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:UpdateSourceRequest",
      "type": "class",
      "name": "UpdateSourceRequest",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "UpdateSourceRequest类，继承自BaseModel",
      "tags": [
        "UpdateSourceRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ChatMessage",
      "type": "class",
      "name": "ChatMessage",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "ChatMessage类",
      "tags": [
        "ChatMessage"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Conversation",
      "type": "class",
      "name": "Conversation",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "Conversation类",
      "tags": [
        "Conversation"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ConversationStore",
      "type": "class",
      "name": "ConversationStore",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "ConversationStore类，包含方法: __init__, get_or_create, add_message, get_history, list_conversations",
      "tags": [
        "ConversationStore"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:ConversationStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "ConversationStore.__init__(max_conversations) 方法",
      "tags": [
        "ConversationStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConversationStore.get_or_create",
      "type": "function",
      "name": "get_or_create",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "ConversationStore.get_or_create(conversation_id) 方法",
      "tags": [
        "ConversationStore",
        "get_or_create"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConversationStore.add_message",
      "type": "function",
      "name": "add_message",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "ConversationStore.add_message(conversation_id, role, content, metadata) 方法",
      "tags": [
        "ConversationStore",
        "add_message"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConversationStore.get_history",
      "type": "function",
      "name": "get_history",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "ConversationStore.get_history(conversation_id, limit) 方法",
      "tags": [
        "ConversationStore",
        "get_history"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConversationStore.list_conversations",
      "type": "function",
      "name": "list_conversations",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "ConversationStore.list_conversations(limit) 方法",
      "tags": [
        "ConversationStore",
        "list_conversations"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ChatRequest",
      "type": "class",
      "name": "ChatRequest",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "ChatRequest类，继承自BaseModel",
      "tags": [
        "ChatRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ChatResponse",
      "type": "class",
      "name": "ChatResponse",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "ChatResponse类，继承自BaseModel",
      "tags": [
        "ChatResponse"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CapabilityInfo",
      "type": "class",
      "name": "CapabilityInfo",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "CapabilityInfo类，继承自BaseModel",
      "tags": [
        "CapabilityInfo"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CapabilitiesResponse",
      "type": "class",
      "name": "CapabilitiesResponse",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "CapabilitiesResponse类，继承自BaseModel",
      "tags": [
        "CapabilitiesResponse"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LlmProviderResponse",
      "type": "class",
      "name": "LlmProviderResponse",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "LlmProviderResponse类，继承自BaseModel",
      "tags": [
        "LlmProviderResponse"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LlmConfigResponse",
      "type": "class",
      "name": "LlmConfigResponse",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "LlmConfigResponse类，继承自BaseModel",
      "tags": [
        "LlmConfigResponse"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LlmProviderUpdate",
      "type": "class",
      "name": "LlmProviderUpdate",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "LlmProviderUpdate类，继承自BaseModel",
      "tags": [
        "LlmProviderUpdate"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LlmConfigUpdate",
      "type": "class",
      "name": "LlmConfigUpdate",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "LlmConfigUpdate类，继承自BaseModel",
      "tags": [
        "LlmConfigUpdate"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillsConfigResponse",
      "type": "class",
      "name": "SkillsConfigResponse",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "SkillsConfigResponse类，继承自BaseModel",
      "tags": [
        "SkillsConfigResponse"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillsConfigUpdate",
      "type": "class",
      "name": "SkillsConfigUpdate",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "SkillsConfigUpdate类，继承自BaseModel",
      "tags": [
        "SkillsConfigUpdate"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:KbConfigResponse",
      "type": "class",
      "name": "KbConfigResponse",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "KbConfigResponse类，继承自BaseModel",
      "tags": [
        "KbConfigResponse"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:KbConfigUpdate",
      "type": "class",
      "name": "KbConfigUpdate",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "KbConfigUpdate类，继承自BaseModel",
      "tags": [
        "KbConfigUpdate"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:GeneralConfigResponse",
      "type": "class",
      "name": "GeneralConfigResponse",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "GeneralConfigResponse类，继承自BaseModel",
      "tags": [
        "GeneralConfigResponse"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:GeneralConfigUpdate",
      "type": "class",
      "name": "GeneralConfigUpdate",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "GeneralConfigUpdate类，继承自BaseModel",
      "tags": [
        "GeneralConfigUpdate"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillInfo",
      "type": "class",
      "name": "SkillInfo",
      "filePath": "src/agentkit/server/routes/skill_management.py",
      "layer": "api",
      "summary": "SkillInfo类，继承自BaseModel",
      "tags": [
        "SkillInfo"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillDetail",
      "type": "class",
      "name": "SkillDetail",
      "filePath": "src/agentkit/server/routes/skill_management.py",
      "layer": "api",
      "summary": "SkillDetail类，继承自BaseModel",
      "tags": [
        "SkillDetail"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CapabilityInfo",
      "type": "class",
      "name": "CapabilityInfo",
      "filePath": "src/agentkit/server/routes/skill_management.py",
      "layer": "api",
      "summary": "CapabilityInfo类，继承自BaseModel",
      "tags": [
        "CapabilityInfo"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RegisterSkillRequest",
      "type": "class",
      "name": "RegisterSkillRequest",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "RegisterSkillRequest类，继承自BaseModel",
      "tags": [
        "RegisterSkillRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CreatePipelineRequest",
      "type": "class",
      "name": "CreatePipelineRequest",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "CreatePipelineRequest类，继承自BaseModel",
      "tags": [
        "CreatePipelineRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ExecutePipelineRequest",
      "type": "class",
      "name": "ExecutePipelineRequest",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "ExecutePipelineRequest类，继承自BaseModel",
      "tags": [
        "ExecutePipelineRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:InstallSkillRequest",
      "type": "class",
      "name": "InstallSkillRequest",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "InstallSkillRequest类，继承自BaseModel",
      "tags": [
        "InstallSkillRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SubmitTaskRequest",
      "type": "class",
      "name": "SubmitTaskRequest",
      "filePath": "src/agentkit/server/routes/tasks.py",
      "layer": "api",
      "summary": "SubmitTaskRequest类，继承自BaseModel",
      "tags": [
        "SubmitTaskRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TerminalSessionState",
      "type": "class",
      "name": "TerminalSessionState",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "Per-session state for a terminal connection.",
      "tags": [
        "TerminalSessionState"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ExecuteRequest",
      "type": "class",
      "name": "ExecuteRequest",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "ExecuteRequest类，继承自BaseModel",
      "tags": [
        "ExecuteRequest"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ExecuteResponse",
      "type": "class",
      "name": "ExecuteResponse",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "ExecuteResponse类，继承自BaseModel",
      "tags": [
        "ExecuteResponse"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SessionInfo",
      "type": "class",
      "name": "SessionInfo",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "SessionInfo类，继承自BaseModel",
      "tags": [
        "SessionInfo"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:HistoryResponse",
      "type": "class",
      "name": "HistoryResponse",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "HistoryResponse类，继承自BaseModel",
      "tags": [
        "HistoryResponse"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:WorkflowStore",
      "type": "class",
      "name": "WorkflowStore",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "In-memory workflow store with async-safe mutation methods.",
      "tags": [
        "WorkflowStore"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:WorkflowStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "WorkflowStore.__init__(max_workflows, max_executions) 方法",
      "tags": [
        "WorkflowStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkflowStore._evict_execution",
      "type": "function",
      "name": "_evict_execution",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "WorkflowStore._evict_execution(execution_id) 方法",
      "tags": [
        "WorkflowStore",
        "_evict_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkflowStore.save",
      "type": "function",
      "name": "save",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "WorkflowStore.save(workflow) 异步方法",
      "tags": [
        "WorkflowStore",
        "save"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkflowStore.get",
      "type": "function",
      "name": "get",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "WorkflowStore.get(workflow_id) 方法",
      "tags": [
        "WorkflowStore",
        "get"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkflowStore.list",
      "type": "function",
      "name": "list",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "WorkflowStore.list(limit) 方法",
      "tags": [
        "WorkflowStore",
        "list"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkflowStore.delete",
      "type": "function",
      "name": "delete",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "WorkflowStore.delete(workflow_id) 异步方法",
      "tags": [
        "WorkflowStore",
        "delete"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkflowStore.create_execution",
      "type": "function",
      "name": "create_execution",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "WorkflowStore.create_execution(workflow_id) 异步方法",
      "tags": [
        "WorkflowStore",
        "create_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkflowStore.get_execution",
      "type": "function",
      "name": "get_execution",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "WorkflowStore.get_execution(execution_id) 方法",
      "tags": [
        "WorkflowStore",
        "get_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkflowStore.update_execution",
      "type": "function",
      "name": "update_execution",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "WorkflowStore.update_execution(execution_id) 异步方法",
      "tags": [
        "WorkflowStore",
        "update_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkflowStore.get_execution_lock",
      "type": "function",
      "name": "get_execution_lock",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "WorkflowStore.get_execution_lock(execution_id) 方法",
      "tags": [
        "WorkflowStore",
        "get_execution_lock"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WorkflowStore.list_executions",
      "type": "function",
      "name": "list_executions",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "WorkflowStore.list_executions(workflow_id, limit, offset) 方法",
      "tags": [
        "WorkflowStore",
        "list_executions"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ConnectionManager",
      "type": "class",
      "name": "ConnectionManager",
      "filePath": "src/agentkit/server/routes/ws.py",
      "layer": "api",
      "summary": "Track active WebSocket connections per task_id for fan-out.",
      "tags": [
        "ConnectionManager"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:ConnectionManager.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/server/routes/ws.py",
      "layer": "api",
      "summary": "ConnectionManager.__init__() 方法",
      "tags": [
        "ConnectionManager",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConnectionManager.add",
      "type": "function",
      "name": "add",
      "filePath": "src/agentkit/server/routes/ws.py",
      "layer": "api",
      "summary": "ConnectionManager.add(task_id, ws, token) 方法",
      "tags": [
        "ConnectionManager",
        "add"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConnectionManager.remove",
      "type": "function",
      "name": "remove",
      "filePath": "src/agentkit/server/routes/ws.py",
      "layer": "api",
      "summary": "ConnectionManager.remove(task_id, ws) 方法",
      "tags": [
        "ConnectionManager",
        "remove"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConnectionManager.get_tokens",
      "type": "function",
      "name": "get_tokens",
      "filePath": "src/agentkit/server/routes/ws.py",
      "layer": "api",
      "summary": "ConnectionManager.get_tokens(task_id) 方法",
      "tags": [
        "ConnectionManager",
        "get_tokens"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConnectionManager.broadcast",
      "type": "function",
      "name": "broadcast",
      "filePath": "src/agentkit/server/routes/ws.py",
      "layer": "api",
      "summary": "ConnectionManager.broadcast(task_id, message) 异步方法",
      "tags": [
        "ConnectionManager",
        "broadcast"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ConnectionManager.has_connections",
      "type": "function",
      "name": "has_connections",
      "filePath": "src/agentkit/server/routes/ws.py",
      "layer": "api",
      "summary": "ConnectionManager.has_connections(task_id) 方法",
      "tags": [
        "ConnectionManager",
        "has_connections"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:BackgroundRunner",
      "type": "class",
      "name": "BackgroundRunner",
      "filePath": "src/agentkit/server/runner.py",
      "layer": "api",
      "summary": "Runs tasks in background asyncio tasks with lifecycle management.",
      "tags": [
        "BackgroundRunner"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:BackgroundRunner.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/server/runner.py",
      "layer": "api",
      "summary": "BackgroundRunner.__init__(task_store, max_concurrent) 方法",
      "tags": [
        "BackgroundRunner",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BackgroundRunner.active_count",
      "type": "function",
      "name": "active_count",
      "filePath": "src/agentkit/server/runner.py",
      "layer": "api",
      "summary": "BackgroundRunner.active_count() 方法",
      "tags": [
        "BackgroundRunner",
        "active_count"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BackgroundRunner.submit",
      "type": "function",
      "name": "submit",
      "filePath": "src/agentkit/server/runner.py",
      "layer": "api",
      "summary": "BackgroundRunner.submit(agent, input_data, skill_name, quality_gate, output_standardizer, skill) 异步方法",
      "tags": [
        "BackgroundRunner",
        "submit"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BackgroundRunner._run_task",
      "type": "function",
      "name": "_run_task",
      "filePath": "src/agentkit/server/runner.py",
      "layer": "api",
      "summary": "BackgroundRunner._run_task(task_id, agent, input_data, quality_gate, output_standardizer, skill) 异步方法",
      "tags": [
        "BackgroundRunner",
        "_run_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BackgroundRunner.cancel",
      "type": "function",
      "name": "cancel",
      "filePath": "src/agentkit/server/runner.py",
      "layer": "api",
      "summary": "BackgroundRunner.cancel(task_id) 异步方法",
      "tags": [
        "BackgroundRunner",
        "cancel"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TaskRecord",
      "type": "class",
      "name": "TaskRecord",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "Stored task record with full lifecycle data",
      "tags": [
        "TaskRecord"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskRecord.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "TaskRecord.to_dict() 方法",
      "tags": [
        "TaskRecord",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TaskRecord.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "TaskRecord.from_dict(cls, data) 方法",
      "tags": [
        "TaskRecord",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:InMemoryTaskStore",
      "type": "class",
      "name": "InMemoryTaskStore",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "In-memory task state storage with automatic TTL cleanup.",
      "tags": [
        "InMemoryTaskStore"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:InMemoryTaskStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "InMemoryTaskStore.__init__(ttl_seconds, max_records) 方法",
      "tags": [
        "InMemoryTaskStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryTaskStore.backend_type",
      "type": "function",
      "name": "backend_type",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "InMemoryTaskStore.backend_type() 方法",
      "tags": [
        "InMemoryTaskStore",
        "backend_type"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryTaskStore.start_cleanup",
      "type": "function",
      "name": "start_cleanup",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "InMemoryTaskStore.start_cleanup() 异步方法",
      "tags": [
        "InMemoryTaskStore",
        "start_cleanup"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryTaskStore.stop_cleanup",
      "type": "function",
      "name": "stop_cleanup",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "InMemoryTaskStore.stop_cleanup() 异步方法",
      "tags": [
        "InMemoryTaskStore",
        "stop_cleanup"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryTaskStore._cleanup_loop",
      "type": "function",
      "name": "_cleanup_loop",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "InMemoryTaskStore._cleanup_loop() 异步方法",
      "tags": [
        "InMemoryTaskStore",
        "_cleanup_loop"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryTaskStore._cleanup_expired",
      "type": "function",
      "name": "_cleanup_expired",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "InMemoryTaskStore._cleanup_expired() 方法",
      "tags": [
        "InMemoryTaskStore",
        "_cleanup_expired"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryTaskStore.create",
      "type": "function",
      "name": "create",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "InMemoryTaskStore.create(task_id, agent_name, input_data, skill_name) 方法",
      "tags": [
        "InMemoryTaskStore",
        "create"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryTaskStore.get",
      "type": "function",
      "name": "get",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "InMemoryTaskStore.get(task_id) 方法",
      "tags": [
        "InMemoryTaskStore",
        "get"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryTaskStore.update_status",
      "type": "function",
      "name": "update_status",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "InMemoryTaskStore.update_status(task_id, status) 方法",
      "tags": [
        "InMemoryTaskStore",
        "update_status"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryTaskStore.list_tasks",
      "type": "function",
      "name": "list_tasks",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "InMemoryTaskStore.list_tasks(status, limit) 方法",
      "tags": [
        "InMemoryTaskStore",
        "list_tasks"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryTaskStore.count_by_status",
      "type": "function",
      "name": "count_by_status",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "InMemoryTaskStore.count_by_status() 方法",
      "tags": [
        "InMemoryTaskStore",
        "count_by_status"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryTaskStore.size",
      "type": "function",
      "name": "size",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "InMemoryTaskStore.size() 方法",
      "tags": [
        "InMemoryTaskStore",
        "size"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryTaskStore.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "InMemoryTaskStore.health_check() 异步方法",
      "tags": [
        "InMemoryTaskStore",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RedisTaskStore",
      "type": "class",
      "name": "RedisTaskStore",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "Redis-backed task state storage with TTL.",
      "tags": [
        "RedisTaskStore"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:RedisTaskStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "RedisTaskStore.__init__(redis_url, ttl_seconds, max_records) 方法",
      "tags": [
        "RedisTaskStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisTaskStore.backend_type",
      "type": "function",
      "name": "backend_type",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "RedisTaskStore.backend_type() 方法",
      "tags": [
        "RedisTaskStore",
        "backend_type"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisTaskStore._get_redis",
      "type": "function",
      "name": "_get_redis",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "RedisTaskStore._get_redis() 异步方法",
      "tags": [
        "RedisTaskStore",
        "_get_redis"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisTaskStore._key",
      "type": "function",
      "name": "_key",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "RedisTaskStore._key(task_id) 方法",
      "tags": [
        "RedisTaskStore",
        "_key"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisTaskStore.start_cleanup",
      "type": "function",
      "name": "start_cleanup",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "RedisTaskStore.start_cleanup() 异步方法",
      "tags": [
        "RedisTaskStore",
        "start_cleanup"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisTaskStore.stop_cleanup",
      "type": "function",
      "name": "stop_cleanup",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "RedisTaskStore.stop_cleanup() 异步方法",
      "tags": [
        "RedisTaskStore",
        "stop_cleanup"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisTaskStore.create",
      "type": "function",
      "name": "create",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "RedisTaskStore.create(task_id, agent_name, input_data, skill_name) 异步方法",
      "tags": [
        "RedisTaskStore",
        "create"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisTaskStore.get",
      "type": "function",
      "name": "get",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "RedisTaskStore.get(task_id) 异步方法",
      "tags": [
        "RedisTaskStore",
        "get"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisTaskStore.update_status",
      "type": "function",
      "name": "update_status",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "RedisTaskStore.update_status(task_id, status, reset_ttl) 异步方法",
      "tags": [
        "RedisTaskStore",
        "update_status"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisTaskStore.list_tasks",
      "type": "function",
      "name": "list_tasks",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "RedisTaskStore.list_tasks(status, limit) 异步方法",
      "tags": [
        "RedisTaskStore",
        "list_tasks"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisTaskStore.count_by_status",
      "type": "function",
      "name": "count_by_status",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "RedisTaskStore.count_by_status() 异步方法",
      "tags": [
        "RedisTaskStore",
        "count_by_status"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisTaskStore.size",
      "type": "function",
      "name": "size",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "RedisTaskStore.size() 异步方法",
      "tags": [
        "RedisTaskStore",
        "size"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisTaskStore.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "RedisTaskStore.health_check() 异步方法",
      "tags": [
        "RedisTaskStore",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisTaskStore._count_keys",
      "type": "function",
      "name": "_count_keys",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "RedisTaskStore._count_keys(redis) 异步方法",
      "tags": [
        "RedisTaskStore",
        "_count_keys"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisTaskStore._evict_oldest_completed",
      "type": "function",
      "name": "_evict_oldest_completed",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "RedisTaskStore._evict_oldest_completed(redis) 异步方法",
      "tags": [
        "RedisTaskStore",
        "_evict_oldest_completed"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AsyncWriteQueue",
      "type": "class",
      "name": "AsyncWriteQueue",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "Background pending-buffer queue for non-blocking session persistence.",
      "tags": [
        "AsyncWriteQueue"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:AsyncWriteQueue.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "AsyncWriteQueue.__init__(store, max_buffer_size) 方法",
      "tags": [
        "AsyncWriteQueue",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AsyncWriteQueue._ensure_started",
      "type": "function",
      "name": "_ensure_started",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "AsyncWriteQueue._ensure_started() 方法",
      "tags": [
        "AsyncWriteQueue",
        "_ensure_started"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AsyncWriteQueue._writer_loop",
      "type": "function",
      "name": "_writer_loop",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "AsyncWriteQueue._writer_loop() 异步方法",
      "tags": [
        "AsyncWriteQueue",
        "_writer_loop"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AsyncWriteQueue.enqueue",
      "type": "function",
      "name": "enqueue",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "AsyncWriteQueue.enqueue(message, session) 方法",
      "tags": [
        "AsyncWriteQueue",
        "enqueue"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AsyncWriteQueue.buffered_messages",
      "type": "function",
      "name": "buffered_messages",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "AsyncWriteQueue.buffered_messages(session_id) 方法",
      "tags": [
        "AsyncWriteQueue",
        "buffered_messages"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AsyncWriteQueue.pending_count",
      "type": "function",
      "name": "pending_count",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "AsyncWriteQueue.pending_count() 方法",
      "tags": [
        "AsyncWriteQueue",
        "pending_count"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AsyncWriteQueue.flush",
      "type": "function",
      "name": "flush",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "AsyncWriteQueue.flush() 异步方法",
      "tags": [
        "AsyncWriteQueue",
        "flush"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AsyncWriteQueue.stop",
      "type": "function",
      "name": "stop",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "AsyncWriteQueue.stop() 异步方法",
      "tags": [
        "AsyncWriteQueue",
        "stop"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SessionManager",
      "type": "class",
      "name": "SessionManager",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "Manages conversation sessions and their messages.",
      "tags": [
        "SessionManager"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:SessionManager.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.__init__(store) 方法",
      "tags": [
        "SessionManager",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionManager.store",
      "type": "function",
      "name": "store",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.store() 方法",
      "tags": [
        "SessionManager",
        "store"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionManager.create_session",
      "type": "function",
      "name": "create_session",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.create_session(agent_name, metadata) 异步方法",
      "tags": [
        "SessionManager",
        "create_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionManager.get_session",
      "type": "function",
      "name": "get_session",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.get_session(session_id) 异步方法",
      "tags": [
        "SessionManager",
        "get_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionManager.pause_session",
      "type": "function",
      "name": "pause_session",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.pause_session(session_id) 异步方法",
      "tags": [
        "SessionManager",
        "pause_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionManager.resume_session",
      "type": "function",
      "name": "resume_session",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.resume_session(session_id) 异步方法",
      "tags": [
        "SessionManager",
        "resume_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionManager.close_session",
      "type": "function",
      "name": "close_session",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.close_session(session_id) 异步方法",
      "tags": [
        "SessionManager",
        "close_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionManager.delete_session",
      "type": "function",
      "name": "delete_session",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.delete_session(session_id) 异步方法",
      "tags": [
        "SessionManager",
        "delete_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionManager.list_sessions",
      "type": "function",
      "name": "list_sessions",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.list_sessions(agent_name, limit) 异步方法",
      "tags": [
        "SessionManager",
        "list_sessions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionManager.append_message",
      "type": "function",
      "name": "append_message",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.append_message(session_id, role, content, tool_call_id, agent_name, metadata) 异步方法",
      "tags": [
        "SessionManager",
        "append_message"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionManager.get_messages",
      "type": "function",
      "name": "get_messages",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.get_messages(session_id, limit, offset) 异步方法",
      "tags": [
        "SessionManager",
        "get_messages"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionManager.get_chat_messages",
      "type": "function",
      "name": "get_chat_messages",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.get_chat_messages(session_id) 异步方法",
      "tags": [
        "SessionManager",
        "get_chat_messages"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionManager.count_messages",
      "type": "function",
      "name": "count_messages",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.count_messages(session_id) 异步方法",
      "tags": [
        "SessionManager",
        "count_messages"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionManager.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.health_check() 异步方法",
      "tags": [
        "SessionManager",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionManager.flush",
      "type": "function",
      "name": "flush",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.flush() 异步方法",
      "tags": [
        "SessionManager",
        "flush"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionManager.close",
      "type": "function",
      "name": "close",
      "filePath": "src/agentkit/session/manager.py",
      "layer": "data",
      "summary": "SessionManager.close() 异步方法",
      "tags": [
        "SessionManager",
        "close"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SessionStatus",
      "type": "class",
      "name": "SessionStatus",
      "filePath": "src/agentkit/session/models.py",
      "layer": "data",
      "summary": "Session lifecycle states.",
      "tags": [
        "SessionStatus"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MessageRole",
      "type": "class",
      "name": "MessageRole",
      "filePath": "src/agentkit/session/models.py",
      "layer": "data",
      "summary": "Message role — mirrors OpenAI chat message roles.",
      "tags": [
        "MessageRole"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Message",
      "type": "class",
      "name": "Message",
      "filePath": "src/agentkit/session/models.py",
      "layer": "data",
      "summary": "A single message within a conversation session.",
      "tags": [
        "Message"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Message.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/session/models.py",
      "layer": "data",
      "summary": "Message.to_dict() 方法",
      "tags": [
        "Message",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Message.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/session/models.py",
      "layer": "data",
      "summary": "Message.from_dict(cls, data) 方法",
      "tags": [
        "Message",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Message.to_chat_message",
      "type": "function",
      "name": "to_chat_message",
      "filePath": "src/agentkit/session/models.py",
      "layer": "data",
      "summary": "Message.to_chat_message() 方法",
      "tags": [
        "Message",
        "to_chat_message"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Session",
      "type": "class",
      "name": "Session",
      "filePath": "src/agentkit/session/models.py",
      "layer": "data",
      "summary": "A conversation session binding a user to an Agent.",
      "tags": [
        "Session"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:Session.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/session/models.py",
      "layer": "data",
      "summary": "Session.to_dict() 方法",
      "tags": [
        "Session",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Session.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/session/models.py",
      "layer": "data",
      "summary": "Session.from_dict(cls, data) 方法",
      "tags": [
        "Session",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Session.new_session_id",
      "type": "function",
      "name": "new_session_id",
      "filePath": "src/agentkit/session/models.py",
      "layer": "data",
      "summary": "Session.new_session_id() 方法",
      "tags": [
        "Session",
        "new_session_id"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Session.new_message_id",
      "type": "function",
      "name": "new_message_id",
      "filePath": "src/agentkit/session/models.py",
      "layer": "data",
      "summary": "Session.new_message_id() 方法",
      "tags": [
        "Session",
        "new_message_id"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SessionStore",
      "type": "class",
      "name": "SessionStore",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "Protocol for session persistence backends.",
      "tags": [
        "SessionStore"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:SessionStore.save_session",
      "type": "function",
      "name": "save_session",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "SessionStore.save_session(session) 异步方法",
      "tags": [
        "SessionStore",
        "save_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionStore.get_session",
      "type": "function",
      "name": "get_session",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "SessionStore.get_session(session_id) 异步方法",
      "tags": [
        "SessionStore",
        "get_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionStore.update_session_status",
      "type": "function",
      "name": "update_session_status",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "SessionStore.update_session_status(session_id, status) 异步方法",
      "tags": [
        "SessionStore",
        "update_session_status"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionStore.delete_session",
      "type": "function",
      "name": "delete_session",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "SessionStore.delete_session(session_id) 异步方法",
      "tags": [
        "SessionStore",
        "delete_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionStore.list_sessions",
      "type": "function",
      "name": "list_sessions",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "SessionStore.list_sessions(agent_name, limit) 异步方法",
      "tags": [
        "SessionStore",
        "list_sessions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionStore.append_message",
      "type": "function",
      "name": "append_message",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "SessionStore.append_message(message) 异步方法",
      "tags": [
        "SessionStore",
        "append_message"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionStore.get_messages",
      "type": "function",
      "name": "get_messages",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "SessionStore.get_messages(session_id, limit, offset) 异步方法",
      "tags": [
        "SessionStore",
        "get_messages"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionStore.count_messages",
      "type": "function",
      "name": "count_messages",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "SessionStore.count_messages(session_id) 异步方法",
      "tags": [
        "SessionStore",
        "count_messages"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SessionStore.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "SessionStore.health_check() 异步方法",
      "tags": [
        "SessionStore",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:InMemorySessionStore",
      "type": "class",
      "name": "InMemorySessionStore",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "In-memory session store for development and testing.",
      "tags": [
        "InMemorySessionStore"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:InMemorySessionStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "InMemorySessionStore.__init__(max_sessions, max_messages_per_session) 方法",
      "tags": [
        "InMemorySessionStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemorySessionStore.save_session",
      "type": "function",
      "name": "save_session",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "InMemorySessionStore.save_session(session) 异步方法",
      "tags": [
        "InMemorySessionStore",
        "save_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemorySessionStore.get_session",
      "type": "function",
      "name": "get_session",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "InMemorySessionStore.get_session(session_id) 异步方法",
      "tags": [
        "InMemorySessionStore",
        "get_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemorySessionStore.update_session_status",
      "type": "function",
      "name": "update_session_status",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "InMemorySessionStore.update_session_status(session_id, status) 异步方法",
      "tags": [
        "InMemorySessionStore",
        "update_session_status"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemorySessionStore.delete_session",
      "type": "function",
      "name": "delete_session",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "InMemorySessionStore.delete_session(session_id) 异步方法",
      "tags": [
        "InMemorySessionStore",
        "delete_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemorySessionStore.list_sessions",
      "type": "function",
      "name": "list_sessions",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "InMemorySessionStore.list_sessions(agent_name, limit) 异步方法",
      "tags": [
        "InMemorySessionStore",
        "list_sessions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemorySessionStore.append_message",
      "type": "function",
      "name": "append_message",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "InMemorySessionStore.append_message(message) 异步方法",
      "tags": [
        "InMemorySessionStore",
        "append_message"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemorySessionStore.get_messages",
      "type": "function",
      "name": "get_messages",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "InMemorySessionStore.get_messages(session_id, limit, offset) 异步方法",
      "tags": [
        "InMemorySessionStore",
        "get_messages"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemorySessionStore.count_messages",
      "type": "function",
      "name": "count_messages",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "InMemorySessionStore.count_messages(session_id) 异步方法",
      "tags": [
        "InMemorySessionStore",
        "count_messages"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemorySessionStore.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "InMemorySessionStore.health_check() 异步方法",
      "tags": [
        "InMemorySessionStore",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:RedisSessionStore",
      "type": "class",
      "name": "RedisSessionStore",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "Redis-backed session store for production use.",
      "tags": [
        "RedisSessionStore"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:RedisSessionStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "RedisSessionStore.__init__(redis_url, ttl_seconds) 方法",
      "tags": [
        "RedisSessionStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisSessionStore._get_redis",
      "type": "function",
      "name": "_get_redis",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "RedisSessionStore._get_redis() 异步方法",
      "tags": [
        "RedisSessionStore",
        "_get_redis"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisSessionStore._session_key",
      "type": "function",
      "name": "_session_key",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "RedisSessionStore._session_key(session_id) 方法",
      "tags": [
        "RedisSessionStore",
        "_session_key"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisSessionStore._messages_key",
      "type": "function",
      "name": "_messages_key",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "RedisSessionStore._messages_key(session_id) 方法",
      "tags": [
        "RedisSessionStore",
        "_messages_key"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisSessionStore.save_session",
      "type": "function",
      "name": "save_session",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "RedisSessionStore.save_session(session) 异步方法",
      "tags": [
        "RedisSessionStore",
        "save_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisSessionStore.get_session",
      "type": "function",
      "name": "get_session",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "RedisSessionStore.get_session(session_id) 异步方法",
      "tags": [
        "RedisSessionStore",
        "get_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisSessionStore.update_session_status",
      "type": "function",
      "name": "update_session_status",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "RedisSessionStore.update_session_status(session_id, status) 异步方法",
      "tags": [
        "RedisSessionStore",
        "update_session_status"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisSessionStore.delete_session",
      "type": "function",
      "name": "delete_session",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "RedisSessionStore.delete_session(session_id) 异步方法",
      "tags": [
        "RedisSessionStore",
        "delete_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisSessionStore.list_sessions",
      "type": "function",
      "name": "list_sessions",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "RedisSessionStore.list_sessions(agent_name, limit) 异步方法",
      "tags": [
        "RedisSessionStore",
        "list_sessions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisSessionStore.append_message",
      "type": "function",
      "name": "append_message",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "RedisSessionStore.append_message(message) 异步方法",
      "tags": [
        "RedisSessionStore",
        "append_message"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisSessionStore.get_messages",
      "type": "function",
      "name": "get_messages",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "RedisSessionStore.get_messages(session_id, limit, offset) 异步方法",
      "tags": [
        "RedisSessionStore",
        "get_messages"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisSessionStore.count_messages",
      "type": "function",
      "name": "count_messages",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "RedisSessionStore.count_messages(session_id) 异步方法",
      "tags": [
        "RedisSessionStore",
        "count_messages"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:RedisSessionStore.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "RedisSessionStore.health_check() 异步方法",
      "tags": [
        "RedisSessionStore",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:FileSessionStore",
      "type": "class",
      "name": "FileSessionStore",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "File-based session store — persists sessions to ~/.agentkit/sessions/.",
      "tags": [
        "FileSessionStore"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:FileSessionStore.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "FileSessionStore.__init__(data_dir) 方法",
      "tags": [
        "FileSessionStore",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FileSessionStore._session_path",
      "type": "function",
      "name": "_session_path",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "FileSessionStore._session_path(session_id) 方法",
      "tags": [
        "FileSessionStore",
        "_session_path"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FileSessionStore._read_session_file",
      "type": "function",
      "name": "_read_session_file",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "FileSessionStore._read_session_file(session_id) 方法",
      "tags": [
        "FileSessionStore",
        "_read_session_file"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FileSessionStore._write_session_file",
      "type": "function",
      "name": "_write_session_file",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "FileSessionStore._write_session_file(session_id, data) 方法",
      "tags": [
        "FileSessionStore",
        "_write_session_file"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FileSessionStore.save_session",
      "type": "function",
      "name": "save_session",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "FileSessionStore.save_session(session) 异步方法",
      "tags": [
        "FileSessionStore",
        "save_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FileSessionStore.get_session",
      "type": "function",
      "name": "get_session",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "FileSessionStore.get_session(session_id) 异步方法",
      "tags": [
        "FileSessionStore",
        "get_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FileSessionStore.update_session_status",
      "type": "function",
      "name": "update_session_status",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "FileSessionStore.update_session_status(session_id, status) 异步方法",
      "tags": [
        "FileSessionStore",
        "update_session_status"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FileSessionStore.delete_session",
      "type": "function",
      "name": "delete_session",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "FileSessionStore.delete_session(session_id) 异步方法",
      "tags": [
        "FileSessionStore",
        "delete_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FileSessionStore.list_sessions",
      "type": "function",
      "name": "list_sessions",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "FileSessionStore.list_sessions(agent_name, limit) 异步方法",
      "tags": [
        "FileSessionStore",
        "list_sessions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FileSessionStore.append_message",
      "type": "function",
      "name": "append_message",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "FileSessionStore.append_message(message) 异步方法",
      "tags": [
        "FileSessionStore",
        "append_message"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FileSessionStore.get_messages",
      "type": "function",
      "name": "get_messages",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "FileSessionStore.get_messages(session_id, limit, offset) 异步方法",
      "tags": [
        "FileSessionStore",
        "get_messages"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FileSessionStore.count_messages",
      "type": "function",
      "name": "count_messages",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "FileSessionStore.count_messages(session_id) 异步方法",
      "tags": [
        "FileSessionStore",
        "count_messages"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FileSessionStore.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "FileSessionStore.health_check() 异步方法",
      "tags": [
        "FileSessionStore",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:EvolutionConfig",
      "type": "class",
      "name": "EvolutionConfig",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "Evolution configuration",
      "tags": [
        "EvolutionConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:IntentConfig",
      "type": "class",
      "name": "IntentConfig",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "意图配置",
      "tags": [
        "IntentConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:QualityGateConfig",
      "type": "class",
      "name": "QualityGateConfig",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "质量门控配置",
      "tags": [
        "QualityGateConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillConfig",
      "type": "class",
      "name": "SkillConfig",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "扩展 AgentConfig，新增 intent、quality_gate、execution_mode 等 v2 字段",
      "tags": [
        "SkillConfig"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:SkillConfig.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "SkillConfig.__init__(name, agent_type, version, description, task_mode, supported_tasks, max_concurrency, input_schema, output_schema, prompt, llm, tools, memory, custom_handler, intent, quality_gate, execution_mode, max_steps, evolution, skill_md_path, disclosure_level, dependencies, capabilities, alignment) 方法",
      "tags": [
        "SkillConfig",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillConfig._validate_v2",
      "type": "function",
      "name": "_validate_v2",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "SkillConfig._validate_v2() 方法",
      "tags": [
        "SkillConfig",
        "_validate_v2"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillConfig._parse_dependencies",
      "type": "function",
      "name": "_parse_dependencies",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "SkillConfig._parse_dependencies(raw) 方法",
      "tags": [
        "SkillConfig",
        "_parse_dependencies"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillConfig._parse_capabilities",
      "type": "function",
      "name": "_parse_capabilities",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "SkillConfig._parse_capabilities(raw) 方法",
      "tags": [
        "SkillConfig",
        "_parse_capabilities"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillConfig.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "SkillConfig.from_dict(cls, data) 方法",
      "tags": [
        "SkillConfig",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillConfig.from_yaml",
      "type": "function",
      "name": "from_yaml",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "SkillConfig.from_yaml(cls, path) 方法",
      "tags": [
        "SkillConfig",
        "from_yaml"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillConfig.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "SkillConfig.to_dict() 方法",
      "tags": [
        "SkillConfig",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Skill",
      "type": "class",
      "name": "Skill",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "Skill 封装 SkillConfig + 绑定 Tools",
      "tags": [
        "Skill"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:Skill.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "Skill.__init__(config, tools) 方法",
      "tags": [
        "Skill",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Skill.name",
      "type": "function",
      "name": "name",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "Skill.name() 方法",
      "tags": [
        "Skill",
        "name"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Skill.version",
      "type": "function",
      "name": "version",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "Skill.version() 方法",
      "tags": [
        "Skill",
        "version"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Skill.config",
      "type": "function",
      "name": "config",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "Skill.config() 方法",
      "tags": [
        "Skill",
        "config"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Skill.tools",
      "type": "function",
      "name": "tools",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "Skill.tools() 方法",
      "tags": [
        "Skill",
        "tools"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Skill.capabilities",
      "type": "function",
      "name": "capabilities",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "Skill.capabilities() 方法",
      "tags": [
        "Skill",
        "capabilities"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Skill.dependencies",
      "type": "function",
      "name": "dependencies",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "Skill.dependencies() 方法",
      "tags": [
        "Skill",
        "dependencies"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Skill.bind_tool",
      "type": "function",
      "name": "bind_tool",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "Skill.bind_tool(tool) 方法",
      "tags": [
        "Skill",
        "bind_tool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Skill.unbind_tool",
      "type": "function",
      "name": "unbind_tool",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "Skill.unbind_tool(tool_name) 方法",
      "tags": [
        "Skill",
        "unbind_tool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Skill.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/skills/base.py",
      "layer": "service",
      "summary": "Skill.to_dict() 方法",
      "tags": [
        "Skill",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PipelineStep",
      "type": "class",
      "name": "PipelineStep",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "Pipeline 步骤定义",
      "tags": [
        "PipelineStep"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PipelineStepResult",
      "type": "class",
      "name": "PipelineStepResult",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "步骤执行结果",
      "tags": [
        "PipelineStepResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PipelineResult",
      "type": "class",
      "name": "PipelineResult",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "Pipeline 执行结果",
      "tags": [
        "PipelineResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:GEOPipeline",
      "type": "class",
      "name": "GEOPipeline",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "GEO 端到端工作流编排",
      "tags": [
        "GEOPipeline"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:GEOPipeline.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "GEOPipeline.__init__(name, steps, skill_registry, agent_pool, workspace) 方法",
      "tags": [
        "GEOPipeline",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEOPipeline.from_config",
      "type": "function",
      "name": "from_config",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "GEOPipeline.from_config(cls, config, skill_registry, agent_pool, workspace) 方法",
      "tags": [
        "GEOPipeline",
        "from_config"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEOPipeline.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "GEOPipeline.execute(input_data) 异步方法",
      "tags": [
        "GEOPipeline",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEOPipeline._execute_step",
      "type": "function",
      "name": "_execute_step",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "GEOPipeline._execute_step(step, input_data, step_outputs, execution_id, saga) 异步方法",
      "tags": [
        "GEOPipeline",
        "_execute_step"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEOPipeline._execute_skill",
      "type": "function",
      "name": "_execute_skill",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "GEOPipeline._execute_skill(skill_name, input_data) 异步方法",
      "tags": [
        "GEOPipeline",
        "_execute_skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEOPipeline._build_execution_groups",
      "type": "function",
      "name": "_build_execution_groups",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "GEOPipeline._build_execution_groups() 方法",
      "tags": [
        "GEOPipeline",
        "_build_execution_groups"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEOPipeline._map_input",
      "type": "function",
      "name": "_map_input",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "GEOPipeline._map_input(step, input_data, step_outputs) 方法",
      "tags": [
        "GEOPipeline",
        "_map_input"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEOPipeline._resolve_mapping_path",
      "type": "function",
      "name": "_resolve_mapping_path",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "GEOPipeline._resolve_mapping_path(path, input_data, step_outputs) 方法",
      "tags": [
        "GEOPipeline",
        "_resolve_mapping_path"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEOPipeline._evaluate_condition",
      "type": "function",
      "name": "_evaluate_condition",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "GEOPipeline._evaluate_condition(condition, input_data, step_outputs) 方法",
      "tags": [
        "GEOPipeline",
        "_evaluate_condition"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:GEOPipeline._build_final_output",
      "type": "function",
      "name": "_build_final_output",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "GEOPipeline._build_final_output(step_outputs, input_data) 方法",
      "tags": [
        "GEOPipeline",
        "_build_final_output"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillLoader",
      "type": "class",
      "name": "SkillLoader",
      "filePath": "src/agentkit/skills/loader.py",
      "layer": "service",
      "summary": "从 YAML/SKILL.md 目录/Python 包批量加载 Skill 并注册到 SkillRegistry",
      "tags": [
        "SkillLoader"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:SkillLoader.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/skills/loader.py",
      "layer": "service",
      "summary": "SkillLoader.__init__(skill_registry, tool_registry) 方法",
      "tags": [
        "SkillLoader",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillLoader.load_from_directory",
      "type": "function",
      "name": "load_from_directory",
      "filePath": "src/agentkit/skills/loader.py",
      "layer": "service",
      "summary": "SkillLoader.load_from_directory(directory) 方法",
      "tags": [
        "SkillLoader",
        "load_from_directory"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillLoader.load_from_file",
      "type": "function",
      "name": "load_from_file",
      "filePath": "src/agentkit/skills/loader.py",
      "layer": "service",
      "summary": "SkillLoader.load_from_file(path) 方法",
      "tags": [
        "SkillLoader",
        "load_from_file"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillLoader._load_skill_from_file",
      "type": "function",
      "name": "_load_skill_from_file",
      "filePath": "src/agentkit/skills/loader.py",
      "layer": "service",
      "summary": "SkillLoader._load_skill_from_file(path) 方法",
      "tags": [
        "SkillLoader",
        "_load_skill_from_file"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillLoader.load_from_skill_md",
      "type": "function",
      "name": "load_from_skill_md",
      "filePath": "src/agentkit/skills/loader.py",
      "layer": "service",
      "summary": "SkillLoader.load_from_skill_md(path, disclosure_level) 方法",
      "tags": [
        "SkillLoader",
        "load_from_skill_md"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillLoader.load_from_entry_points",
      "type": "function",
      "name": "load_from_entry_points",
      "filePath": "src/agentkit/skills/loader.py",
      "layer": "service",
      "summary": "SkillLoader.load_from_entry_points(group) 方法",
      "tags": [
        "SkillLoader",
        "load_from_entry_points"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillLoader._bind_tools",
      "type": "function",
      "name": "_bind_tools",
      "filePath": "src/agentkit/skills/loader.py",
      "layer": "service",
      "summary": "SkillLoader._bind_tools(config) 方法",
      "tags": [
        "SkillLoader",
        "_bind_tools"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillPipeline",
      "type": "class",
      "name": "SkillPipeline",
      "filePath": "src/agentkit/skills/pipeline.py",
      "layer": "service",
      "summary": "将多个 Skill 串联为 Pipeline 执行",
      "tags": [
        "SkillPipeline"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:SkillPipeline.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/skills/pipeline.py",
      "layer": "service",
      "summary": "SkillPipeline.__init__(name, steps, skill_registry) 方法",
      "tags": [
        "SkillPipeline",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillPipeline.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/skills/pipeline.py",
      "layer": "service",
      "summary": "SkillPipeline.execute(input_data, agent_factory) 异步方法",
      "tags": [
        "SkillPipeline",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillPipeline._execute_skill",
      "type": "function",
      "name": "_execute_skill",
      "filePath": "src/agentkit/skills/pipeline.py",
      "layer": "service",
      "summary": "SkillPipeline._execute_skill(skill_name, input_data, agent_factory) 异步方法",
      "tags": [
        "SkillPipeline",
        "_execute_skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillPipeline._evaluate_condition",
      "type": "function",
      "name": "_evaluate_condition",
      "filePath": "src/agentkit/skills/pipeline.py",
      "layer": "service",
      "summary": "SkillPipeline._evaluate_condition(condition, current_input, results) 方法",
      "tags": [
        "SkillPipeline",
        "_evaluate_condition"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillPipeline._resolve_path",
      "type": "function",
      "name": "_resolve_path",
      "filePath": "src/agentkit/skills/pipeline.py",
      "layer": "service",
      "summary": "SkillPipeline._resolve_path(path, data) 方法",
      "tags": [
        "SkillPipeline",
        "_resolve_path"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillPipeline._map_input",
      "type": "function",
      "name": "_map_input",
      "filePath": "src/agentkit/skills/pipeline.py",
      "layer": "service",
      "summary": "SkillPipeline._map_input(current_input, mapping, results) 方法",
      "tags": [
        "SkillPipeline",
        "_map_input"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillRegistry",
      "type": "class",
      "name": "SkillRegistry",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "Skill 注册中心，管理 Skill 的注册、发现、更新",
      "tags": [
        "SkillRegistry"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:SkillRegistry.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry.__init__() 方法",
      "tags": [
        "SkillRegistry",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillRegistry.register",
      "type": "function",
      "name": "register",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry.register(skill) 方法",
      "tags": [
        "SkillRegistry",
        "register"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillRegistry.unregister",
      "type": "function",
      "name": "unregister",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry.unregister(name, version) 方法",
      "tags": [
        "SkillRegistry",
        "unregister"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillRegistry.get",
      "type": "function",
      "name": "get",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry.get(name, version) 方法",
      "tags": [
        "SkillRegistry",
        "get"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillRegistry.list_skills",
      "type": "function",
      "name": "list_skills",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry.list_skills() 方法",
      "tags": [
        "SkillRegistry",
        "list_skills"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillRegistry.update_skill",
      "type": "function",
      "name": "update_skill",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry.update_skill(name, config) 方法",
      "tags": [
        "SkillRegistry",
        "update_skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillRegistry.has_skill",
      "type": "function",
      "name": "has_skill",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry.has_skill(name, version) 方法",
      "tags": [
        "SkillRegistry",
        "has_skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillRegistry.get_versions",
      "type": "function",
      "name": "get_versions",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry.get_versions(name) 方法",
      "tags": [
        "SkillRegistry",
        "get_versions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillRegistry.query_by_capability",
      "type": "function",
      "name": "query_by_capability",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry.query_by_capability(tag) 方法",
      "tags": [
        "SkillRegistry",
        "query_by_capability"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillRegistry.health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry.health_check(name) 方法",
      "tags": [
        "SkillRegistry",
        "health_check"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillRegistry._check_skill_dependencies",
      "type": "function",
      "name": "_check_skill_dependencies",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry._check_skill_dependencies(skill) 方法",
      "tags": [
        "SkillRegistry",
        "_check_skill_dependencies"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillRegistry._check_version_constraint",
      "type": "function",
      "name": "_check_version_constraint",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry._check_version_constraint(actual_version, constraint) 方法",
      "tags": [
        "SkillRegistry",
        "_check_version_constraint"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillRegistry.register_pipeline",
      "type": "function",
      "name": "register_pipeline",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry.register_pipeline(pipeline) 方法",
      "tags": [
        "SkillRegistry",
        "register_pipeline"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillRegistry.get_pipeline",
      "type": "function",
      "name": "get_pipeline",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry.get_pipeline(name) 方法",
      "tags": [
        "SkillRegistry",
        "get_pipeline"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillRegistry.list_pipelines",
      "type": "function",
      "name": "list_pipelines",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry.list_pipelines() 方法",
      "tags": [
        "SkillRegistry",
        "list_pipelines"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillRegistry.unregister_pipeline",
      "type": "function",
      "name": "unregister_pipeline",
      "filePath": "src/agentkit/skills/registry.py",
      "layer": "service",
      "summary": "SkillRegistry.unregister_pipeline(name) 方法",
      "tags": [
        "SkillRegistry",
        "unregister_pipeline"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:DependencyDecl",
      "type": "class",
      "name": "DependencyDecl",
      "filePath": "src/agentkit/skills/schema.py",
      "layer": "service",
      "summary": "依赖声明 - 声明 Skill/Tool 依赖",
      "tags": [
        "DependencyDecl"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CapabilityTag",
      "type": "class",
      "name": "CapabilityTag",
      "filePath": "src/agentkit/skills/schema.py",
      "layer": "service",
      "summary": "能力标签 - 用于 Skill 能力查询",
      "tags": [
        "CapabilityTag"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillSpec",
      "type": "class",
      "name": "SkillSpec",
      "filePath": "src/agentkit/skills/schema.py",
      "layer": "service",
      "summary": "Skill 标准接口规范",
      "tags": [
        "SkillSpec"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:SkillSpec.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/skills/schema.py",
      "layer": "service",
      "summary": "SkillSpec.from_dict(cls, data) 方法",
      "tags": [
        "SkillSpec",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillSpec.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/skills/schema.py",
      "layer": "service",
      "summary": "SkillSpec.to_dict() 方法",
      "tags": [
        "SkillSpec",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillSpec.capability_tags",
      "type": "function",
      "name": "capability_tags",
      "filePath": "src/agentkit/skills/schema.py",
      "layer": "service",
      "summary": "SkillSpec.capability_tags() 方法",
      "tags": [
        "SkillSpec",
        "capability_tags"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillSpec.required_dependencies",
      "type": "function",
      "name": "required_dependencies",
      "filePath": "src/agentkit/skills/schema.py",
      "layer": "service",
      "summary": "SkillSpec.required_dependencies() 方法",
      "tags": [
        "SkillSpec",
        "required_dependencies"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillSpec.skill_dependencies",
      "type": "function",
      "name": "skill_dependencies",
      "filePath": "src/agentkit/skills/schema.py",
      "layer": "service",
      "summary": "SkillSpec.skill_dependencies() 方法",
      "tags": [
        "SkillSpec",
        "skill_dependencies"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillSpec.tool_dependencies",
      "type": "function",
      "name": "tool_dependencies",
      "filePath": "src/agentkit/skills/schema.py",
      "layer": "service",
      "summary": "SkillSpec.tool_dependencies() 方法",
      "tags": [
        "SkillSpec",
        "tool_dependencies"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:HealthCheckResult",
      "type": "class",
      "name": "HealthCheckResult",
      "filePath": "src/agentkit/skills/schema.py",
      "layer": "service",
      "summary": "依赖健康检查结果",
      "tags": [
        "HealthCheckResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HealthCheckResult.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/skills/schema.py",
      "layer": "service",
      "summary": "HealthCheckResult.to_dict() 方法",
      "tags": [
        "HealthCheckResult",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillMdParser",
      "type": "class",
      "name": "SkillMdParser",
      "filePath": "src/agentkit/skills/skill_md.py",
      "layer": "service",
      "summary": "解析 SKILL.md 文件为 SkillConfig",
      "tags": [
        "SkillMdParser"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillMdParser.parse",
      "type": "function",
      "name": "parse",
      "filePath": "src/agentkit/skills/skill_md.py",
      "layer": "service",
      "summary": "SkillMdParser.parse(file_path) 方法",
      "tags": [
        "SkillMdParser",
        "parse"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillMdParser.to_skill_config",
      "type": "function",
      "name": "to_skill_config",
      "filePath": "src/agentkit/skills/skill_md.py",
      "layer": "service",
      "summary": "SkillMdParser.to_skill_config(frontmatter, sections, file_path, disclosure_level) 方法",
      "tags": [
        "SkillMdParser",
        "to_skill_config"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:_NoOpCounter",
      "type": "class",
      "name": "_NoOpCounter",
      "filePath": "src/agentkit/telemetry/metrics.py",
      "layer": "utility",
      "summary": "No-op counter used when OTel is not installed.",
      "tags": [
        "_NoOpCounter"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_NoOpCounter.add",
      "type": "function",
      "name": "add",
      "filePath": "src/agentkit/telemetry/metrics.py",
      "layer": "utility",
      "summary": "_NoOpCounter.add() 方法",
      "tags": [
        "_NoOpCounter",
        "add"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:_NoOpHistogram",
      "type": "class",
      "name": "_NoOpHistogram",
      "filePath": "src/agentkit/telemetry/metrics.py",
      "layer": "utility",
      "summary": "No-op histogram used when OTel is not installed.",
      "tags": [
        "_NoOpHistogram"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_NoOpHistogram.record",
      "type": "function",
      "name": "record",
      "filePath": "src/agentkit/telemetry/metrics.py",
      "layer": "utility",
      "summary": "_NoOpHistogram.record() 方法",
      "tags": [
        "_NoOpHistogram",
        "record"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:_NoOpUpDownCounter",
      "type": "class",
      "name": "_NoOpUpDownCounter",
      "filePath": "src/agentkit/telemetry/metrics.py",
      "layer": "utility",
      "summary": "No-op up-down counter used when OTel is not installed.",
      "tags": [
        "_NoOpUpDownCounter"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_NoOpUpDownCounter.add",
      "type": "function",
      "name": "add",
      "filePath": "src/agentkit/telemetry/metrics.py",
      "layer": "utility",
      "summary": "_NoOpUpDownCounter.add() 方法",
      "tags": [
        "_NoOpUpDownCounter",
        "add"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TelemetryConfig",
      "type": "class",
      "name": "TelemetryConfig",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "Telemetry configuration.",
      "tags": [
        "TelemetryConfig"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:NoOpSpan",
      "type": "class",
      "name": "NoOpSpan",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "No-op span when telemetry is disabled.",
      "tags": [
        "NoOpSpan"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:NoOpSpan.__enter__",
      "type": "function",
      "name": "__enter__",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "NoOpSpan.__enter__() 方法",
      "tags": [
        "NoOpSpan",
        "__enter__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:NoOpSpan.__exit__",
      "type": "function",
      "name": "__exit__",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "NoOpSpan.__exit__() 方法",
      "tags": [
        "NoOpSpan",
        "__exit__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:NoOpSpan.set_attribute",
      "type": "function",
      "name": "set_attribute",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "NoOpSpan.set_attribute(key, value) 方法",
      "tags": [
        "NoOpSpan",
        "set_attribute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:NoOpSpan.add_event",
      "type": "function",
      "name": "add_event",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "NoOpSpan.add_event(name, attributes) 方法",
      "tags": [
        "NoOpSpan",
        "add_event"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:NoOpSpan.record_exception",
      "type": "function",
      "name": "record_exception",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "NoOpSpan.record_exception(exception) 方法",
      "tags": [
        "NoOpSpan",
        "record_exception"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:NoOpSpan.is_recording",
      "type": "function",
      "name": "is_recording",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "NoOpSpan.is_recording() 方法",
      "tags": [
        "NoOpSpan",
        "is_recording"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:NoOpTracer",
      "type": "class",
      "name": "NoOpTracer",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "No-op tracer when telemetry is disabled.",
      "tags": [
        "NoOpTracer"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:NoOpTracer.start_span",
      "type": "function",
      "name": "start_span",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "NoOpTracer.start_span(name, attributes) 方法",
      "tags": [
        "NoOpTracer",
        "start_span"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:NoOpTracer.start_as_current_span",
      "type": "function",
      "name": "start_as_current_span",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "NoOpTracer.start_as_current_span(name, attributes) 方法",
      "tags": [
        "NoOpTracer",
        "start_as_current_span"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:OTelSpan",
      "type": "class",
      "name": "OTelSpan",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "Wrapper around OpenTelemetry Span.",
      "tags": [
        "OTelSpan"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:OTelSpan.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "OTelSpan.__init__(span) 方法",
      "tags": [
        "OTelSpan",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OTelSpan.__enter__",
      "type": "function",
      "name": "__enter__",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "OTelSpan.__enter__() 方法",
      "tags": [
        "OTelSpan",
        "__enter__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OTelSpan.__exit__",
      "type": "function",
      "name": "__exit__",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "OTelSpan.__exit__() 方法",
      "tags": [
        "OTelSpan",
        "__exit__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OTelSpan.set_attribute",
      "type": "function",
      "name": "set_attribute",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "OTelSpan.set_attribute(key, value) 方法",
      "tags": [
        "OTelSpan",
        "set_attribute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OTelSpan.add_event",
      "type": "function",
      "name": "add_event",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "OTelSpan.add_event(name, attributes) 方法",
      "tags": [
        "OTelSpan",
        "add_event"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OTelSpan.record_exception",
      "type": "function",
      "name": "record_exception",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "OTelSpan.record_exception(exception) 方法",
      "tags": [
        "OTelSpan",
        "record_exception"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OTelSpan.is_recording",
      "type": "function",
      "name": "is_recording",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "OTelSpan.is_recording() 方法",
      "tags": [
        "OTelSpan",
        "is_recording"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:OTelTracer",
      "type": "class",
      "name": "OTelTracer",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "Wrapper around OpenTelemetry Tracer.",
      "tags": [
        "OTelTracer"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OTelTracer.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "OTelTracer.__init__(tracer) 方法",
      "tags": [
        "OTelTracer",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OTelTracer.start_span",
      "type": "function",
      "name": "start_span",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "OTelTracer.start_span(name, attributes) 方法",
      "tags": [
        "OTelTracer",
        "start_span"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OTelTracer.start_as_current_span",
      "type": "function",
      "name": "start_as_current_span",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "OTelTracer.start_as_current_span(name, attributes) 方法",
      "tags": [
        "OTelTracer",
        "start_as_current_span"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:_NoOpSpan",
      "type": "class",
      "name": "_NoOpSpan",
      "filePath": "src/agentkit/telemetry/tracing.py",
      "layer": "utility",
      "summary": "No-op span context manager used when OTel is not installed.",
      "tags": [
        "_NoOpSpan"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_NoOpSpan.__enter__",
      "type": "function",
      "name": "__enter__",
      "filePath": "src/agentkit/telemetry/tracing.py",
      "layer": "utility",
      "summary": "_NoOpSpan.__enter__() 方法",
      "tags": [
        "_NoOpSpan",
        "__enter__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_NoOpSpan.__exit__",
      "type": "function",
      "name": "__exit__",
      "filePath": "src/agentkit/telemetry/tracing.py",
      "layer": "utility",
      "summary": "_NoOpSpan.__exit__() 方法",
      "tags": [
        "_NoOpSpan",
        "__exit__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_NoOpSpan.set_attribute",
      "type": "function",
      "name": "set_attribute",
      "filePath": "src/agentkit/telemetry/tracing.py",
      "layer": "utility",
      "summary": "_NoOpSpan.set_attribute() 方法",
      "tags": [
        "_NoOpSpan",
        "set_attribute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_NoOpSpan.add_event",
      "type": "function",
      "name": "add_event",
      "filePath": "src/agentkit/telemetry/tracing.py",
      "layer": "utility",
      "summary": "_NoOpSpan.add_event() 方法",
      "tags": [
        "_NoOpSpan",
        "add_event"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_NoOpSpan.set_status",
      "type": "function",
      "name": "set_status",
      "filePath": "src/agentkit/telemetry/tracing.py",
      "layer": "utility",
      "summary": "_NoOpSpan.set_status() 方法",
      "tags": [
        "_NoOpSpan",
        "set_status"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_NoOpSpan.record_exception",
      "type": "function",
      "name": "record_exception",
      "filePath": "src/agentkit/telemetry/tracing.py",
      "layer": "utility",
      "summary": "_NoOpSpan.record_exception() 方法",
      "tags": [
        "_NoOpSpan",
        "record_exception"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AgentTool",
      "type": "class",
      "name": "AgentTool",
      "filePath": "src/agentkit/tools/agent_tool.py",
      "layer": "utility",
      "summary": "将另一个 Agent 包装为 Tool",
      "tags": [
        "AgentTool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/agent_tool.py",
      "layer": "utility",
      "summary": "AgentTool.__init__(name, description, agent_name, task_type, input_mapping, output_mapping, timeout_seconds, version, tags) 方法",
      "tags": [
        "AgentTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentTool.set_dispatcher",
      "type": "function",
      "name": "set_dispatcher",
      "filePath": "src/agentkit/tools/agent_tool.py",
      "layer": "utility",
      "summary": "AgentTool.set_dispatcher(dispatcher) 方法",
      "tags": [
        "AgentTool",
        "set_dispatcher"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AgentTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/agent_tool.py",
      "layer": "utility",
      "summary": "AgentTool.execute() 异步方法",
      "tags": [
        "AgentTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:AskHumanTool",
      "type": "class",
      "name": "AskHumanTool",
      "filePath": "src/agentkit/tools/ask_human.py",
      "layer": "utility",
      "summary": "Tool that asks the human user a question and waits for a reply.",
      "tags": [
        "AskHumanTool"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:AskHumanTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/ask_human.py",
      "layer": "utility",
      "summary": "AskHumanTool.__init__(timeout) 方法",
      "tags": [
        "AskHumanTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AskHumanTool.configure",
      "type": "function",
      "name": "configure",
      "filePath": "src/agentkit/tools/ask_human.py",
      "layer": "utility",
      "summary": "AskHumanTool.configure(pending_replies, ask_callback) 方法",
      "tags": [
        "AskHumanTool",
        "configure"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AskHumanTool.parameters",
      "type": "function",
      "name": "parameters",
      "filePath": "src/agentkit/tools/ask_human.py",
      "layer": "utility",
      "summary": "AskHumanTool.parameters() 方法",
      "tags": [
        "AskHumanTool",
        "parameters"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:AskHumanTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/ask_human.py",
      "layer": "utility",
      "summary": "AskHumanTool.execute() 异步方法",
      "tags": [
        "AskHumanTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:BaiduSearchTool",
      "type": "class",
      "name": "BaiduSearchTool",
      "filePath": "src/agentkit/tools/baidu_search.py",
      "layer": "utility",
      "summary": "百度搜索工具 - 执行关键词搜索，返回搜索结果",
      "tags": [
        "BaiduSearchTool"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:BaiduSearchTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/baidu_search.py",
      "layer": "utility",
      "summary": "BaiduSearchTool.__init__(name, description, input_schema, output_schema, version, tags, api_key, api_url) 方法",
      "tags": [
        "BaiduSearchTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaiduSearchTool._default_input_schema",
      "type": "function",
      "name": "_default_input_schema",
      "filePath": "src/agentkit/tools/baidu_search.py",
      "layer": "utility",
      "summary": "BaiduSearchTool._default_input_schema() 方法",
      "tags": [
        "BaiduSearchTool",
        "_default_input_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaiduSearchTool._default_output_schema",
      "type": "function",
      "name": "_default_output_schema",
      "filePath": "src/agentkit/tools/baidu_search.py",
      "layer": "utility",
      "summary": "BaiduSearchTool._default_output_schema() 方法",
      "tags": [
        "BaiduSearchTool",
        "_default_output_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaiduSearchTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/baidu_search.py",
      "layer": "utility",
      "summary": "BaiduSearchTool.execute() 异步方法",
      "tags": [
        "BaiduSearchTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaiduSearchTool._search_via_api",
      "type": "function",
      "name": "_search_via_api",
      "filePath": "src/agentkit/tools/baidu_search.py",
      "layer": "utility",
      "summary": "BaiduSearchTool._search_via_api(query, max_results) 异步方法",
      "tags": [
        "BaiduSearchTool",
        "_search_via_api"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaiduSearchTool._search_via_scrape",
      "type": "function",
      "name": "_search_via_scrape",
      "filePath": "src/agentkit/tools/baidu_search.py",
      "layer": "utility",
      "summary": "BaiduSearchTool._search_via_scrape(query, max_results) 异步方法",
      "tags": [
        "BaiduSearchTool",
        "_search_via_scrape"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaiduSearchTool._parse_baidu_html",
      "type": "function",
      "name": "_parse_baidu_html",
      "filePath": "src/agentkit/tools/baidu_search.py",
      "layer": "utility",
      "summary": "BaiduSearchTool._parse_baidu_html(html, max_results) 方法",
      "tags": [
        "BaiduSearchTool",
        "_parse_baidu_html"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:BaiduSearchTool._parse_baidu_html_alt",
      "type": "function",
      "name": "_parse_baidu_html_alt",
      "filePath": "src/agentkit/tools/baidu_search.py",
      "layer": "utility",
      "summary": "BaiduSearchTool._parse_baidu_html_alt(html, max_results) 方法",
      "tags": [
        "BaiduSearchTool",
        "_parse_baidu_html_alt"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:Tool",
      "type": "class",
      "name": "Tool",
      "filePath": "src/agentkit/tools/base.py",
      "layer": "utility",
      "summary": "工具抽象基类",
      "tags": [
        "Tool"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:Tool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/base.py",
      "layer": "utility",
      "summary": "Tool.__init__(name, description, input_schema, output_schema, version, tags) 方法",
      "tags": [
        "Tool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Tool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/base.py",
      "layer": "utility",
      "summary": "Tool.execute() 异步方法",
      "tags": [
        "Tool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Tool.before_execute",
      "type": "function",
      "name": "before_execute",
      "filePath": "src/agentkit/tools/base.py",
      "layer": "utility",
      "summary": "Tool.before_execute() 异步方法",
      "tags": [
        "Tool",
        "before_execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Tool.after_execute",
      "type": "function",
      "name": "after_execute",
      "filePath": "src/agentkit/tools/base.py",
      "layer": "utility",
      "summary": "Tool.after_execute(result) 异步方法",
      "tags": [
        "Tool",
        "after_execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Tool.on_error",
      "type": "function",
      "name": "on_error",
      "filePath": "src/agentkit/tools/base.py",
      "layer": "utility",
      "summary": "Tool.on_error(error) 异步方法",
      "tags": [
        "Tool",
        "on_error"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Tool.safe_execute",
      "type": "function",
      "name": "safe_execute",
      "filePath": "src/agentkit/tools/base.py",
      "layer": "utility",
      "summary": "Tool.safe_execute() 异步方法",
      "tags": [
        "Tool",
        "safe_execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Tool.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/tools/base.py",
      "layer": "utility",
      "summary": "Tool.to_dict() 方法",
      "tags": [
        "Tool",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:Tool.__repr__",
      "type": "function",
      "name": "__repr__",
      "filePath": "src/agentkit/tools/base.py",
      "layer": "utility",
      "summary": "Tool.__repr__() 方法",
      "tags": [
        "Tool",
        "__repr__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SequentialChain",
      "type": "class",
      "name": "SequentialChain",
      "filePath": "src/agentkit/tools/composition.py",
      "layer": "utility",
      "summary": "顺序链 - 依次执行多个工具，前一个输出作为后一个输入",
      "tags": [
        "SequentialChain"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SequentialChain.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/composition.py",
      "layer": "utility",
      "summary": "SequentialChain.__init__(name, description, tools, version, tags) 方法",
      "tags": [
        "SequentialChain",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SequentialChain.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/composition.py",
      "layer": "utility",
      "summary": "SequentialChain.execute() 异步方法",
      "tags": [
        "SequentialChain",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ParallelFanOut",
      "type": "class",
      "name": "ParallelFanOut",
      "filePath": "src/agentkit/tools/composition.py",
      "layer": "utility",
      "summary": "并行扇出 - 同时执行多个工具，结果合并",
      "tags": [
        "ParallelFanOut"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ParallelFanOut.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/composition.py",
      "layer": "utility",
      "summary": "ParallelFanOut.__init__(name, description, tools, merge_strategy, version, tags) 方法",
      "tags": [
        "ParallelFanOut",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ParallelFanOut.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/composition.py",
      "layer": "utility",
      "summary": "ParallelFanOut.execute() 异步方法",
      "tags": [
        "ParallelFanOut",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:DynamicSelector",
      "type": "class",
      "name": "DynamicSelector",
      "filePath": "src/agentkit/tools/composition.py",
      "layer": "utility",
      "summary": "动态选择器 - 根据输入动态选择合适的工具执行",
      "tags": [
        "DynamicSelector"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:DynamicSelector.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/composition.py",
      "layer": "utility",
      "summary": "DynamicSelector.__init__(name, description, tools, mode, llm_client, version, tags) 方法",
      "tags": [
        "DynamicSelector",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DynamicSelector.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/composition.py",
      "layer": "utility",
      "summary": "DynamicSelector.execute() 异步方法",
      "tags": [
        "DynamicSelector",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DynamicSelector._select_by_keyword",
      "type": "function",
      "name": "_select_by_keyword",
      "filePath": "src/agentkit/tools/composition.py",
      "layer": "utility",
      "summary": "DynamicSelector._select_by_keyword(kwargs, intent) 方法",
      "tags": [
        "DynamicSelector",
        "_select_by_keyword"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DynamicSelector._select_by_llm",
      "type": "function",
      "name": "_select_by_llm",
      "filePath": "src/agentkit/tools/composition.py",
      "layer": "utility",
      "summary": "DynamicSelector._select_by_llm(kwargs) 异步方法",
      "tags": [
        "DynamicSelector",
        "_select_by_llm"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ComputerUseTool",
      "type": "class",
      "name": "ComputerUseTool",
      "filePath": "src/agentkit/tools/computer_use.py",
      "layer": "utility",
      "summary": "Computer Use 工具",
      "tags": [
        "ComputerUseTool"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:ComputerUseTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/computer_use.py",
      "layer": "utility",
      "summary": "ComputerUseTool.__init__(name, description, input_schema, output_schema, version, tags, api_key, model, api_base_url, session_factory, recorder, fallback_callback, max_retries, request_timeout) 方法",
      "tags": [
        "ComputerUseTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseTool._get_http_client",
      "type": "function",
      "name": "_get_http_client",
      "filePath": "src/agentkit/tools/computer_use.py",
      "layer": "utility",
      "summary": "ComputerUseTool._get_http_client() 异步方法",
      "tags": [
        "ComputerUseTool",
        "_get_http_client"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseTool.close",
      "type": "function",
      "name": "close",
      "filePath": "src/agentkit/tools/computer_use.py",
      "layer": "utility",
      "summary": "ComputerUseTool.close() 异步方法",
      "tags": [
        "ComputerUseTool",
        "close"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseTool._default_input_schema",
      "type": "function",
      "name": "_default_input_schema",
      "filePath": "src/agentkit/tools/computer_use.py",
      "layer": "utility",
      "summary": "ComputerUseTool._default_input_schema() 方法",
      "tags": [
        "ComputerUseTool",
        "_default_input_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseTool._default_output_schema",
      "type": "function",
      "name": "_default_output_schema",
      "filePath": "src/agentkit/tools/computer_use.py",
      "layer": "utility",
      "summary": "ComputerUseTool._default_output_schema() 方法",
      "tags": [
        "ComputerUseTool",
        "_default_output_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/computer_use.py",
      "layer": "utility",
      "summary": "ComputerUseTool.execute() 异步方法",
      "tags": [
        "ComputerUseTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseTool._execute_with_fallback",
      "type": "function",
      "name": "_execute_with_fallback",
      "filePath": "src/agentkit/tools/computer_use.py",
      "layer": "utility",
      "summary": "ComputerUseTool._execute_with_fallback(session, action, params) 异步方法",
      "tags": [
        "ComputerUseTool",
        "_execute_with_fallback"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseTool._call_anthropic_api",
      "type": "function",
      "name": "_call_anthropic_api",
      "filePath": "src/agentkit/tools/computer_use.py",
      "layer": "utility",
      "summary": "ComputerUseTool._call_anthropic_api(session, action, params) 异步方法",
      "tags": [
        "ComputerUseTool",
        "_call_anthropic_api"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseTool._validate_params",
      "type": "function",
      "name": "_validate_params",
      "filePath": "src/agentkit/tools/computer_use.py",
      "layer": "utility",
      "summary": "ComputerUseTool._validate_params(action, kwargs) 方法",
      "tags": [
        "ComputerUseTool",
        "_validate_params"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseTool._format_result",
      "type": "function",
      "name": "_format_result",
      "filePath": "src/agentkit/tools/computer_use.py",
      "layer": "utility",
      "summary": "ComputerUseTool._format_result(result, session_id) 方法",
      "tags": [
        "ComputerUseTool",
        "_format_result"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseTool._error_result",
      "type": "function",
      "name": "_error_result",
      "filePath": "src/agentkit/tools/computer_use.py",
      "layer": "utility",
      "summary": "ComputerUseTool._error_result(action, error, fallback) 方法",
      "tags": [
        "ComputerUseTool",
        "_error_result"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseTool.session_manager",
      "type": "function",
      "name": "session_manager",
      "filePath": "src/agentkit/tools/computer_use.py",
      "layer": "utility",
      "summary": "ComputerUseTool.session_manager() 方法",
      "tags": [
        "ComputerUseTool",
        "session_manager"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseTool.recorder",
      "type": "function",
      "name": "recorder",
      "filePath": "src/agentkit/tools/computer_use.py",
      "layer": "utility",
      "summary": "ComputerUseTool.recorder() 方法",
      "tags": [
        "ComputerUseTool",
        "recorder"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ActionRecord",
      "type": "class",
      "name": "ActionRecord",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "操作记录",
      "tags": [
        "ActionRecord"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ActionRecord.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ActionRecord.to_dict() 方法",
      "tags": [
        "ActionRecord",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ActionRecord.from_dict",
      "type": "function",
      "name": "from_dict",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ActionRecord.from_dict(cls, data) 方法",
      "tags": [
        "ActionRecord",
        "from_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ComputerUseRecorder",
      "type": "class",
      "name": "ComputerUseRecorder",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "Computer Use 操作录制器",
      "tags": [
        "ComputerUseRecorder"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:ComputerUseRecorder.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ComputerUseRecorder.__init__(screenshot_dir) 方法",
      "tags": [
        "ComputerUseRecorder",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseRecorder.record",
      "type": "function",
      "name": "record",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ComputerUseRecorder.record(action, params, result, screenshot_path) 方法",
      "tags": [
        "ComputerUseRecorder",
        "record"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseRecorder.get_records",
      "type": "function",
      "name": "get_records",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ComputerUseRecorder.get_records() 方法",
      "tags": [
        "ComputerUseRecorder",
        "get_records"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseRecorder.get_records_by_action",
      "type": "function",
      "name": "get_records_by_action",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ComputerUseRecorder.get_records_by_action(action) 方法",
      "tags": [
        "ComputerUseRecorder",
        "get_records_by_action"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseRecorder.get_failed_records",
      "type": "function",
      "name": "get_failed_records",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ComputerUseRecorder.get_failed_records() 方法",
      "tags": [
        "ComputerUseRecorder",
        "get_failed_records"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseRecorder.replay",
      "type": "function",
      "name": "replay",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ComputerUseRecorder.replay(session) 异步方法",
      "tags": [
        "ComputerUseRecorder",
        "replay"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseRecorder.save_recording",
      "type": "function",
      "name": "save_recording",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ComputerUseRecorder.save_recording(path) 方法",
      "tags": [
        "ComputerUseRecorder",
        "save_recording"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseRecorder.load_recording",
      "type": "function",
      "name": "load_recording",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ComputerUseRecorder.load_recording(path) 方法",
      "tags": [
        "ComputerUseRecorder",
        "load_recording"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseRecorder.clear",
      "type": "function",
      "name": "clear",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ComputerUseRecorder.clear() 方法",
      "tags": [
        "ComputerUseRecorder",
        "clear"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseRecorder.total_actions",
      "type": "function",
      "name": "total_actions",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ComputerUseRecorder.total_actions() 方法",
      "tags": [
        "ComputerUseRecorder",
        "total_actions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseRecorder.success_count",
      "type": "function",
      "name": "success_count",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ComputerUseRecorder.success_count() 方法",
      "tags": [
        "ComputerUseRecorder",
        "success_count"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseRecorder.failure_count",
      "type": "function",
      "name": "failure_count",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ComputerUseRecorder.failure_count() 方法",
      "tags": [
        "ComputerUseRecorder",
        "failure_count"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseRecorder.summary",
      "type": "function",
      "name": "summary",
      "filePath": "src/agentkit/tools/computer_use_recorder.py",
      "layer": "utility",
      "summary": "ComputerUseRecorder.summary() 方法",
      "tags": [
        "ComputerUseRecorder",
        "summary"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ScreenInfo",
      "type": "class",
      "name": "ScreenInfo",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "屏幕信息",
      "tags": [
        "ScreenInfo"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ActionResult",
      "type": "class",
      "name": "ActionResult",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "操作执行结果",
      "tags": [
        "ActionResult"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ComputerUseSession",
      "type": "class",
      "name": "ComputerUseSession",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "虚拟桌面会话抽象基类",
      "tags": [
        "ComputerUseSession"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:ComputerUseSession.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSession.__init__(session_id, screen_width, screen_height) 方法",
      "tags": [
        "ComputerUseSession",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseSession.is_started",
      "type": "function",
      "name": "is_started",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSession.is_started() 方法",
      "tags": [
        "ComputerUseSession",
        "is_started"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseSession.start",
      "type": "function",
      "name": "start",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSession.start() 异步方法",
      "tags": [
        "ComputerUseSession",
        "start"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseSession.stop",
      "type": "function",
      "name": "stop",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSession.stop() 异步方法",
      "tags": [
        "ComputerUseSession",
        "stop"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseSession.screenshot",
      "type": "function",
      "name": "screenshot",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSession.screenshot() 异步方法",
      "tags": [
        "ComputerUseSession",
        "screenshot"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseSession.execute_action",
      "type": "function",
      "name": "execute_action",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSession.execute_action(action) 异步方法",
      "tags": [
        "ComputerUseSession",
        "execute_action"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseSession.record_action",
      "type": "function",
      "name": "record_action",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSession.record_action(action, params, result) 方法",
      "tags": [
        "ComputerUseSession",
        "record_action"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseSession.action_history",
      "type": "function",
      "name": "action_history",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSession.action_history() 方法",
      "tags": [
        "ComputerUseSession",
        "action_history"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseSession.__repr__",
      "type": "function",
      "name": "__repr__",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSession.__repr__() 方法",
      "tags": [
        "ComputerUseSession",
        "__repr__"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:InMemoryComputerUseSession",
      "type": "class",
      "name": "InMemoryComputerUseSession",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "内存模拟会话，用于测试",
      "tags": [
        "InMemoryComputerUseSession"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:InMemoryComputerUseSession.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "InMemoryComputerUseSession.__init__(session_id, screen_width, screen_height) 方法",
      "tags": [
        "InMemoryComputerUseSession",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryComputerUseSession.start",
      "type": "function",
      "name": "start",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "InMemoryComputerUseSession.start() 异步方法",
      "tags": [
        "InMemoryComputerUseSession",
        "start"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryComputerUseSession.stop",
      "type": "function",
      "name": "stop",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "InMemoryComputerUseSession.stop() 异步方法",
      "tags": [
        "InMemoryComputerUseSession",
        "stop"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryComputerUseSession.screenshot",
      "type": "function",
      "name": "screenshot",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "InMemoryComputerUseSession.screenshot() 异步方法",
      "tags": [
        "InMemoryComputerUseSession",
        "screenshot"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryComputerUseSession.execute_action",
      "type": "function",
      "name": "execute_action",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "InMemoryComputerUseSession.execute_action(action) 异步方法",
      "tags": [
        "InMemoryComputerUseSession",
        "execute_action"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:InMemoryComputerUseSession._simulate_action",
      "type": "function",
      "name": "_simulate_action",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "InMemoryComputerUseSession._simulate_action(action) 方法",
      "tags": [
        "InMemoryComputerUseSession",
        "_simulate_action"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:LocalComputerUseSession",
      "type": "class",
      "name": "LocalComputerUseSession",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "本地桌面会话，使用 pyautogui + screencapture。",
      "tags": [
        "LocalComputerUseSession"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:LocalComputerUseSession.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "LocalComputerUseSession.__init__(session_id, screen_width, screen_height) 方法",
      "tags": [
        "LocalComputerUseSession",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LocalComputerUseSession.start",
      "type": "function",
      "name": "start",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "LocalComputerUseSession.start() 异步方法",
      "tags": [
        "LocalComputerUseSession",
        "start"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LocalComputerUseSession.stop",
      "type": "function",
      "name": "stop",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "LocalComputerUseSession.stop() 异步方法",
      "tags": [
        "LocalComputerUseSession",
        "stop"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LocalComputerUseSession.screenshot",
      "type": "function",
      "name": "screenshot",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "LocalComputerUseSession.screenshot() 异步方法",
      "tags": [
        "LocalComputerUseSession",
        "screenshot"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LocalComputerUseSession.execute_action",
      "type": "function",
      "name": "execute_action",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "LocalComputerUseSession.execute_action(action) 异步方法",
      "tags": [
        "LocalComputerUseSession",
        "execute_action"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LocalComputerUseSession._validate_coordinates",
      "type": "function",
      "name": "_validate_coordinates",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "LocalComputerUseSession._validate_coordinates(x, y) 方法",
      "tags": [
        "LocalComputerUseSession",
        "_validate_coordinates"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:LocalComputerUseSession._execute_local_action",
      "type": "function",
      "name": "_execute_local_action",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "LocalComputerUseSession._execute_local_action(action) 异步方法",
      "tags": [
        "LocalComputerUseSession",
        "_execute_local_action"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:DockerComputerUseSession",
      "type": "class",
      "name": "DockerComputerUseSession",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "Docker 沙箱虚拟桌面会话",
      "tags": [
        "DockerComputerUseSession"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:DockerComputerUseSession.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "DockerComputerUseSession.__init__(session_id, screen_width, screen_height, container_image, docker_url) 方法",
      "tags": [
        "DockerComputerUseSession",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DockerComputerUseSession.container_id",
      "type": "function",
      "name": "container_id",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "DockerComputerUseSession.container_id() 方法",
      "tags": [
        "DockerComputerUseSession",
        "container_id"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DockerComputerUseSession.start",
      "type": "function",
      "name": "start",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "DockerComputerUseSession.start() 异步方法",
      "tags": [
        "DockerComputerUseSession",
        "start"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DockerComputerUseSession.stop",
      "type": "function",
      "name": "stop",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "DockerComputerUseSession.stop() 异步方法",
      "tags": [
        "DockerComputerUseSession",
        "stop"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DockerComputerUseSession.screenshot",
      "type": "function",
      "name": "screenshot",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "DockerComputerUseSession.screenshot() 异步方法",
      "tags": [
        "DockerComputerUseSession",
        "screenshot"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:DockerComputerUseSession.execute_action",
      "type": "function",
      "name": "execute_action",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "DockerComputerUseSession.execute_action(action) 异步方法",
      "tags": [
        "DockerComputerUseSession",
        "execute_action"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ComputerUseSessionManager",
      "type": "class",
      "name": "ComputerUseSessionManager",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "Computer Use 会话管理器",
      "tags": [
        "ComputerUseSessionManager"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:ComputerUseSessionManager.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSessionManager.__init__(max_sessions, session_factory) 方法",
      "tags": [
        "ComputerUseSessionManager",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseSessionManager.get_or_create",
      "type": "function",
      "name": "get_or_create",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSessionManager.get_or_create(session_id) 方法",
      "tags": [
        "ComputerUseSessionManager",
        "get_or_create"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseSessionManager.get",
      "type": "function",
      "name": "get",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSessionManager.get(session_id) 方法",
      "tags": [
        "ComputerUseSessionManager",
        "get"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseSessionManager.remove",
      "type": "function",
      "name": "remove",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSessionManager.remove(session_id) 方法",
      "tags": [
        "ComputerUseSessionManager",
        "remove"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseSessionManager.list_sessions",
      "type": "function",
      "name": "list_sessions",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSessionManager.list_sessions() 方法",
      "tags": [
        "ComputerUseSessionManager",
        "list_sessions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseSessionManager.has_session",
      "type": "function",
      "name": "has_session",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSessionManager.has_session(session_id) 方法",
      "tags": [
        "ComputerUseSessionManager",
        "has_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ComputerUseSessionManager.close_all",
      "type": "function",
      "name": "close_all",
      "filePath": "src/agentkit/tools/computer_use_session.py",
      "layer": "utility",
      "summary": "ComputerUseSessionManager.close_all() 异步方法",
      "tags": [
        "ComputerUseSessionManager",
        "close_all"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:FunctionTool",
      "type": "class",
      "name": "FunctionTool",
      "filePath": "src/agentkit/tools/function_tool.py",
      "layer": "utility",
      "summary": "将普通 Python 函数包装为 Tool",
      "tags": [
        "FunctionTool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FunctionTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/function_tool.py",
      "layer": "utility",
      "summary": "FunctionTool.__init__(name, description, func, input_schema, output_schema, version, tags) 方法",
      "tags": [
        "FunctionTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FunctionTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/function_tool.py",
      "layer": "utility",
      "summary": "FunctionTool.execute() 异步方法",
      "tags": [
        "FunctionTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:FunctionTool._infer_schema",
      "type": "function",
      "name": "_infer_schema",
      "filePath": "src/agentkit/tools/function_tool.py",
      "layer": "utility",
      "summary": "FunctionTool._infer_schema(func) 方法",
      "tags": [
        "FunctionTool",
        "_infer_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:HeadroomRetrieveTool",
      "type": "class",
      "name": "HeadroomRetrieveTool",
      "filePath": "src/agentkit/tools/headroom_retrieve.py",
      "layer": "utility",
      "summary": "从 CCR 缓存检索原始未压缩数据",
      "tags": [
        "HeadroomRetrieveTool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HeadroomRetrieveTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/headroom_retrieve.py",
      "layer": "utility",
      "summary": "HeadroomRetrieveTool.__init__(compressor) 方法",
      "tags": [
        "HeadroomRetrieveTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:HeadroomRetrieveTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/headroom_retrieve.py",
      "layer": "utility",
      "summary": "HeadroomRetrieveTool.execute() 异步方法",
      "tags": [
        "HeadroomRetrieveTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MCPTool",
      "type": "class",
      "name": "MCPTool",
      "filePath": "src/agentkit/tools/mcp_tool.py",
      "layer": "utility",
      "summary": "MCP 工具 - 通过 MCP Client 调用远程工具",
      "tags": [
        "MCPTool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/mcp_tool.py",
      "layer": "utility",
      "summary": "MCPTool.__init__(name, description, client, input_schema, output_schema, version, tags) 方法",
      "tags": [
        "MCPTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MCPTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/mcp_tool.py",
      "layer": "utility",
      "summary": "MCPTool.execute() 异步方法",
      "tags": [
        "MCPTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:MemoryTool",
      "type": "class",
      "name": "MemoryTool",
      "filePath": "src/agentkit/tools/memory_tool.py",
      "layer": "utility",
      "summary": "Agent 可调用的记忆操作工具.",
      "tags": [
        "MemoryTool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/memory_tool.py",
      "layer": "utility",
      "summary": "MemoryTool.__init__(memory_store) 方法",
      "tags": [
        "MemoryTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/memory_tool.py",
      "layer": "utility",
      "summary": "MemoryTool.execute() 异步方法",
      "tags": [
        "MemoryTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:MemoryTool._update_soul",
      "type": "function",
      "name": "_update_soul",
      "filePath": "src/agentkit/tools/memory_tool.py",
      "layer": "utility",
      "summary": "MemoryTool._update_soul(mf, section, content, reason) 异步方法",
      "tags": [
        "MemoryTool",
        "_update_soul"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ErrorType",
      "type": "class",
      "name": "ErrorType",
      "filePath": "src/agentkit/tools/output_parser.py",
      "layer": "utility",
      "summary": "命令输出错误类型",
      "tags": [
        "ErrorType"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ParsedOutput",
      "type": "class",
      "name": "ParsedOutput",
      "filePath": "src/agentkit/tools/output_parser.py",
      "layer": "utility",
      "summary": "结构化命令输出",
      "tags": [
        "ParsedOutput"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ParsedOutput.to_dict",
      "type": "function",
      "name": "to_dict",
      "filePath": "src/agentkit/tools/output_parser.py",
      "layer": "utility",
      "summary": "ParsedOutput.to_dict() 方法",
      "tags": [
        "ParsedOutput",
        "to_dict"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:OutputParser",
      "type": "class",
      "name": "OutputParser",
      "filePath": "src/agentkit/tools/output_parser.py",
      "layer": "utility",
      "summary": "命令输出结构化解析器",
      "tags": [
        "OutputParser"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OutputParser.parse",
      "type": "function",
      "name": "parse",
      "filePath": "src/agentkit/tools/output_parser.py",
      "layer": "utility",
      "summary": "OutputParser.parse(output, exit_code) 方法",
      "tags": [
        "OutputParser",
        "parse"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OutputParser._extract_message",
      "type": "function",
      "name": "_extract_message",
      "filePath": "src/agentkit/tools/output_parser.py",
      "layer": "utility",
      "summary": "OutputParser._extract_message(output) 方法",
      "tags": [
        "OutputParser",
        "_extract_message"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:OutputParser._classify_error",
      "type": "function",
      "name": "_classify_error",
      "filePath": "src/agentkit/tools/output_parser.py",
      "layer": "utility",
      "summary": "OutputParser._classify_error(output, exit_code) 方法",
      "tags": [
        "OutputParser",
        "_classify_error"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PTYOutput",
      "type": "class",
      "name": "PTYOutput",
      "filePath": "src/agentkit/tools/pty_session.py",
      "layer": "utility",
      "summary": "PTY 输出结果",
      "tags": [
        "PTYOutput"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:PTYSession",
      "type": "class",
      "name": "PTYSession",
      "filePath": "src/agentkit/tools/pty_session.py",
      "layer": "utility",
      "summary": "伪终端会话 - 支持交互式命令",
      "tags": [
        "PTYSession"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:PTYSession.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/pty_session.py",
      "layer": "utility",
      "summary": "PTYSession.__init__(auto_respond, custom_rules, default_timeout, buffer_size) 方法",
      "tags": [
        "PTYSession",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PTYSession.is_running",
      "type": "function",
      "name": "is_running",
      "filePath": "src/agentkit/tools/pty_session.py",
      "layer": "utility",
      "summary": "PTYSession.is_running() 方法",
      "tags": [
        "PTYSession",
        "is_running"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PTYSession.start",
      "type": "function",
      "name": "start",
      "filePath": "src/agentkit/tools/pty_session.py",
      "layer": "utility",
      "summary": "PTYSession.start() 异步方法",
      "tags": [
        "PTYSession",
        "start"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PTYSession.run_command",
      "type": "function",
      "name": "run_command",
      "filePath": "src/agentkit/tools/pty_session.py",
      "layer": "utility",
      "summary": "PTYSession.run_command(command, timeout, cwd, env) 异步方法",
      "tags": [
        "PTYSession",
        "run_command"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PTYSession.send",
      "type": "function",
      "name": "send",
      "filePath": "src/agentkit/tools/pty_session.py",
      "layer": "utility",
      "summary": "PTYSession.send(line) 异步方法",
      "tags": [
        "PTYSession",
        "send"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PTYSession.read_output",
      "type": "function",
      "name": "read_output",
      "filePath": "src/agentkit/tools/pty_session.py",
      "layer": "utility",
      "summary": "PTYSession.read_output(timeout) 异步方法",
      "tags": [
        "PTYSession",
        "read_output"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PTYSession.close",
      "type": "function",
      "name": "close",
      "filePath": "src/agentkit/tools/pty_session.py",
      "layer": "utility",
      "summary": "PTYSession.close() 异步方法",
      "tags": [
        "PTYSession",
        "close"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PTYSession._read_until_exit",
      "type": "function",
      "name": "_read_until_exit",
      "filePath": "src/agentkit/tools/pty_session.py",
      "layer": "utility",
      "summary": "PTYSession._read_until_exit(timeout) 异步方法",
      "tags": [
        "PTYSession",
        "_read_until_exit"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PTYSession._drain_remaining_output",
      "type": "function",
      "name": "_drain_remaining_output",
      "filePath": "src/agentkit/tools/pty_session.py",
      "layer": "utility",
      "summary": "PTYSession._drain_remaining_output() 异步方法",
      "tags": [
        "PTYSession",
        "_drain_remaining_output"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:PTYSession._try_auto_respond",
      "type": "function",
      "name": "_try_auto_respond",
      "filePath": "src/agentkit/tools/pty_session.py",
      "layer": "utility",
      "summary": "PTYSession._try_auto_respond(recent_output) 异步方法",
      "tags": [
        "PTYSession",
        "_try_auto_respond"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ToolRegistry",
      "type": "class",
      "name": "ToolRegistry",
      "filePath": "src/agentkit/tools/registry.py",
      "layer": "utility",
      "summary": "工具注册中心，管理工具的注册、发现、版本",
      "tags": [
        "ToolRegistry"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:ToolRegistry.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/registry.py",
      "layer": "utility",
      "summary": "ToolRegistry.__init__() 方法",
      "tags": [
        "ToolRegistry",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ToolRegistry.register",
      "type": "function",
      "name": "register",
      "filePath": "src/agentkit/tools/registry.py",
      "layer": "utility",
      "summary": "ToolRegistry.register(tool) 方法",
      "tags": [
        "ToolRegistry",
        "register"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ToolRegistry.unregister",
      "type": "function",
      "name": "unregister",
      "filePath": "src/agentkit/tools/registry.py",
      "layer": "utility",
      "summary": "ToolRegistry.unregister(name, version) 方法",
      "tags": [
        "ToolRegistry",
        "unregister"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ToolRegistry.get",
      "type": "function",
      "name": "get",
      "filePath": "src/agentkit/tools/registry.py",
      "layer": "utility",
      "summary": "ToolRegistry.get(name, version) 方法",
      "tags": [
        "ToolRegistry",
        "get"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ToolRegistry.list_tools",
      "type": "function",
      "name": "list_tools",
      "filePath": "src/agentkit/tools/registry.py",
      "layer": "utility",
      "summary": "ToolRegistry.list_tools(tag) 方法",
      "tags": [
        "ToolRegistry",
        "list_tools"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ToolRegistry.list_all_versions",
      "type": "function",
      "name": "list_all_versions",
      "filePath": "src/agentkit/tools/registry.py",
      "layer": "utility",
      "summary": "ToolRegistry.list_all_versions(name) 方法",
      "tags": [
        "ToolRegistry",
        "list_all_versions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ToolRegistry.has_tool",
      "type": "function",
      "name": "has_tool",
      "filePath": "src/agentkit/tools/registry.py",
      "layer": "utility",
      "summary": "ToolRegistry.has_tool(name) 方法",
      "tags": [
        "ToolRegistry",
        "has_tool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ToolRegistry.clear",
      "type": "function",
      "name": "clear",
      "filePath": "src/agentkit/tools/registry.py",
      "layer": "utility",
      "summary": "ToolRegistry.clear() 方法",
      "tags": [
        "ToolRegistry",
        "clear"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SchemaExtractTool",
      "type": "class",
      "name": "SchemaExtractTool",
      "filePath": "src/agentkit/tools/schema_tools.py",
      "layer": "utility",
      "summary": "结构化数据提取工具 - 从 HTML 中提取 JSON-LD、Microdata、RDFa 等",
      "tags": [
        "SchemaExtractTool"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:SchemaExtractTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/schema_tools.py",
      "layer": "utility",
      "summary": "SchemaExtractTool.__init__(name, description, input_schema, output_schema, version, tags) 方法",
      "tags": [
        "SchemaExtractTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SchemaExtractTool._default_input_schema",
      "type": "function",
      "name": "_default_input_schema",
      "filePath": "src/agentkit/tools/schema_tools.py",
      "layer": "utility",
      "summary": "SchemaExtractTool._default_input_schema() 方法",
      "tags": [
        "SchemaExtractTool",
        "_default_input_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SchemaExtractTool._default_output_schema",
      "type": "function",
      "name": "_default_output_schema",
      "filePath": "src/agentkit/tools/schema_tools.py",
      "layer": "utility",
      "summary": "SchemaExtractTool._default_output_schema() 方法",
      "tags": [
        "SchemaExtractTool",
        "_default_output_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SchemaExtractTool._is_url",
      "type": "function",
      "name": "_is_url",
      "filePath": "src/agentkit/tools/schema_tools.py",
      "layer": "utility",
      "summary": "SchemaExtractTool._is_url(text) 方法",
      "tags": [
        "SchemaExtractTool",
        "_is_url"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SchemaExtractTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/schema_tools.py",
      "layer": "utility",
      "summary": "SchemaExtractTool.execute() 异步方法",
      "tags": [
        "SchemaExtractTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SchemaGenerateTool",
      "type": "class",
      "name": "SchemaGenerateTool",
      "filePath": "src/agentkit/tools/schema_tools.py",
      "layer": "utility",
      "summary": "JSON-LD 结构化数据生成工具 - 为常见 Schema.org 类型生成标记",
      "tags": [
        "SchemaGenerateTool"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:SchemaGenerateTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/schema_tools.py",
      "layer": "utility",
      "summary": "SchemaGenerateTool.__init__(name, description, input_schema, output_schema, version, tags) 方法",
      "tags": [
        "SchemaGenerateTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SchemaGenerateTool._default_input_schema",
      "type": "function",
      "name": "_default_input_schema",
      "filePath": "src/agentkit/tools/schema_tools.py",
      "layer": "utility",
      "summary": "SchemaGenerateTool._default_input_schema() 方法",
      "tags": [
        "SchemaGenerateTool",
        "_default_input_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SchemaGenerateTool._default_output_schema",
      "type": "function",
      "name": "_default_output_schema",
      "filePath": "src/agentkit/tools/schema_tools.py",
      "layer": "utility",
      "summary": "SchemaGenerateTool._default_output_schema() 方法",
      "tags": [
        "SchemaGenerateTool",
        "_default_output_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SchemaGenerateTool._generate_manual",
      "type": "function",
      "name": "_generate_manual",
      "filePath": "src/agentkit/tools/schema_tools.py",
      "layer": "utility",
      "summary": "SchemaGenerateTool._generate_manual(schema_type, properties) 方法",
      "tags": [
        "SchemaGenerateTool",
        "_generate_manual"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SchemaGenerateTool._generate_with_schemaorg",
      "type": "function",
      "name": "_generate_with_schemaorg",
      "filePath": "src/agentkit/tools/schema_tools.py",
      "layer": "utility",
      "summary": "SchemaGenerateTool._generate_with_schemaorg(schema_type, properties) 方法",
      "tags": [
        "SchemaGenerateTool",
        "_generate_with_schemaorg"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SchemaGenerateTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/schema_tools.py",
      "layer": "utility",
      "summary": "SchemaGenerateTool.execute() 异步方法",
      "tags": [
        "SchemaGenerateTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:ShellTool",
      "type": "class",
      "name": "ShellTool",
      "filePath": "src/agentkit/tools/shell.py",
      "layer": "utility",
      "summary": "Shell 命令执行工具",
      "tags": [
        "ShellTool"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:ShellTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/shell.py",
      "layer": "utility",
      "summary": "ShellTool.__init__(name, description, input_schema, output_schema, version, tags, confirm_callback, default_timeout, max_output_length) 方法",
      "tags": [
        "ShellTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ShellTool._default_input_schema",
      "type": "function",
      "name": "_default_input_schema",
      "filePath": "src/agentkit/tools/shell.py",
      "layer": "utility",
      "summary": "ShellTool._default_input_schema() 方法",
      "tags": [
        "ShellTool",
        "_default_input_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ShellTool._default_output_schema",
      "type": "function",
      "name": "_default_output_schema",
      "filePath": "src/agentkit/tools/shell.py",
      "layer": "utility",
      "summary": "ShellTool._default_output_schema() 方法",
      "tags": [
        "ShellTool",
        "_default_output_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ShellTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/shell.py",
      "layer": "utility",
      "summary": "ShellTool.execute() 异步方法",
      "tags": [
        "ShellTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ShellTool._execute_standalone",
      "type": "function",
      "name": "_execute_standalone",
      "filePath": "src/agentkit/tools/shell.py",
      "layer": "utility",
      "summary": "ShellTool._execute_standalone(command, timeout, working_dir, interactive) 异步方法",
      "tags": [
        "ShellTool",
        "_execute_standalone"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ShellTool._execute_in_session",
      "type": "function",
      "name": "_execute_in_session",
      "filePath": "src/agentkit/tools/shell.py",
      "layer": "utility",
      "summary": "ShellTool._execute_in_session(command, session_id, timeout, working_dir, interactive) 异步方法",
      "tags": [
        "ShellTool",
        "_execute_in_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ShellTool._execute_with_pty",
      "type": "function",
      "name": "_execute_with_pty",
      "filePath": "src/agentkit/tools/shell.py",
      "layer": "utility",
      "summary": "ShellTool._execute_with_pty(command, timeout, cwd, env) 异步方法",
      "tags": [
        "ShellTool",
        "_execute_with_pty"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ShellTool._is_dangerous",
      "type": "function",
      "name": "_is_dangerous",
      "filePath": "src/agentkit/tools/shell.py",
      "layer": "utility",
      "summary": "ShellTool._is_dangerous(command) 方法",
      "tags": [
        "ShellTool",
        "_is_dangerous"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ShellTool._is_single_command_dangerous",
      "type": "function",
      "name": "_is_single_command_dangerous",
      "filePath": "src/agentkit/tools/shell.py",
      "layer": "utility",
      "summary": "ShellTool._is_single_command_dangerous(command) 方法",
      "tags": [
        "ShellTool",
        "_is_single_command_dangerous"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ShellTool._request_confirmation",
      "type": "function",
      "name": "_request_confirmation",
      "filePath": "src/agentkit/tools/shell.py",
      "layer": "utility",
      "summary": "ShellTool._request_confirmation(command) 异步方法",
      "tags": [
        "ShellTool",
        "_request_confirmation"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ShellTool._log_audit",
      "type": "function",
      "name": "_log_audit",
      "filePath": "src/agentkit/tools/shell.py",
      "layer": "utility",
      "summary": "ShellTool._log_audit(command, session_id, exit_code, blocked) 方法",
      "tags": [
        "ShellTool",
        "_log_audit"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ShellTool.session_manager",
      "type": "function",
      "name": "session_manager",
      "filePath": "src/agentkit/tools/shell.py",
      "layer": "utility",
      "summary": "ShellTool.session_manager() 方法",
      "tags": [
        "ShellTool",
        "session_manager"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ShellTool.audit_log",
      "type": "function",
      "name": "audit_log",
      "filePath": "src/agentkit/tools/shell.py",
      "layer": "utility",
      "summary": "ShellTool.audit_log() 方法",
      "tags": [
        "ShellTool",
        "audit_log"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:SkillInstallTool",
      "type": "class",
      "name": "SkillInstallTool",
      "filePath": "src/agentkit/tools/skill_install.py",
      "layer": "utility",
      "summary": "技能安装工具",
      "tags": [
        "SkillInstallTool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillInstallTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/skill_install.py",
      "layer": "utility",
      "summary": "SkillInstallTool.__init__(name, description, input_schema, output_schema, version, tags, confirm_callback, skill_registry, tool_registry) 方法",
      "tags": [
        "SkillInstallTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillInstallTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/skill_install.py",
      "layer": "utility",
      "summary": "SkillInstallTool.execute() 异步方法",
      "tags": [
        "SkillInstallTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:SkillInstallTool._try_register_skill",
      "type": "function",
      "name": "_try_register_skill",
      "filePath": "src/agentkit/tools/skill_install.py",
      "layer": "utility",
      "summary": "SkillInstallTool._try_register_skill(name) 方法",
      "tags": [
        "SkillInstallTool",
        "_try_register_skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:CommandRecord",
      "type": "class",
      "name": "CommandRecord",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "命令执行记录",
      "tags": [
        "CommandRecord"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TerminalSession",
      "type": "class",
      "name": "TerminalSession",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "终端会话 - 跨命令保持 cwd/env/history 状态",
      "tags": [
        "TerminalSession"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:TerminalSession.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession.__init__(session_id, cwd, env, max_history) 方法",
      "tags": [
        "TerminalSession",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession.cwd",
      "type": "function",
      "name": "cwd",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession.cwd() 方法",
      "tags": [
        "TerminalSession",
        "cwd"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession.env",
      "type": "function",
      "name": "env",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession.env() 方法",
      "tags": [
        "TerminalSession",
        "env"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession.history",
      "type": "function",
      "name": "history",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession.history() 方法",
      "tags": [
        "TerminalSession",
        "history"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession.created_at",
      "type": "function",
      "name": "created_at",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession.created_at() 方法",
      "tags": [
        "TerminalSession",
        "created_at"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession.get_cwd",
      "type": "function",
      "name": "get_cwd",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession.get_cwd() 方法",
      "tags": [
        "TerminalSession",
        "get_cwd"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession.set_cwd",
      "type": "function",
      "name": "set_cwd",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession.set_cwd(cwd) 方法",
      "tags": [
        "TerminalSession",
        "set_cwd"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession.get_env",
      "type": "function",
      "name": "get_env",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession.get_env() 方法",
      "tags": [
        "TerminalSession",
        "get_env"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession.set_env",
      "type": "function",
      "name": "set_env",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession.set_env(key, value) 方法",
      "tags": [
        "TerminalSession",
        "set_env"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession.update_env",
      "type": "function",
      "name": "update_env",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession.update_env(env) 方法",
      "tags": [
        "TerminalSession",
        "update_env"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession.get_history",
      "type": "function",
      "name": "get_history",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession.get_history() 方法",
      "tags": [
        "TerminalSession",
        "get_history"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession.execute(command, timeout) 异步方法",
      "tags": [
        "TerminalSession",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession._build_command",
      "type": "function",
      "name": "_build_command",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession._build_command(command) 方法",
      "tags": [
        "TerminalSession",
        "_build_command"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession._update_state_after_execution",
      "type": "function",
      "name": "_update_state_after_execution",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession._update_state_after_execution(command, output, exit_code) 方法",
      "tags": [
        "TerminalSession",
        "_update_state_after_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession._parse_cd_commands",
      "type": "function",
      "name": "_parse_cd_commands",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession._parse_cd_commands(command, output) 方法",
      "tags": [
        "TerminalSession",
        "_parse_cd_commands"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession._parse_export_commands",
      "type": "function",
      "name": "_parse_export_commands",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession._parse_export_commands(command) 方法",
      "tags": [
        "TerminalSession",
        "_parse_export_commands"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession._add_history",
      "type": "function",
      "name": "_add_history",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession._add_history(record) 方法",
      "tags": [
        "TerminalSession",
        "_add_history"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSession.close",
      "type": "function",
      "name": "close",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSession.close() 方法",
      "tags": [
        "TerminalSession",
        "close"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:TerminalSessionManager",
      "type": "class",
      "name": "TerminalSessionManager",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "终端会话管理器 - 按 ID 管理多个 TerminalSession",
      "tags": [
        "TerminalSessionManager"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:TerminalSessionManager.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSessionManager.__init__(max_sessions) 方法",
      "tags": [
        "TerminalSessionManager",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSessionManager.get_or_create",
      "type": "function",
      "name": "get_or_create",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSessionManager.get_or_create(session_id, cwd, env) 方法",
      "tags": [
        "TerminalSessionManager",
        "get_or_create"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSessionManager.get",
      "type": "function",
      "name": "get",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSessionManager.get(session_id) 方法",
      "tags": [
        "TerminalSessionManager",
        "get"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSessionManager.remove",
      "type": "function",
      "name": "remove",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSessionManager.remove(session_id) 方法",
      "tags": [
        "TerminalSessionManager",
        "remove"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSessionManager.list_sessions",
      "type": "function",
      "name": "list_sessions",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSessionManager.list_sessions() 方法",
      "tags": [
        "TerminalSessionManager",
        "list_sessions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSessionManager.has_session",
      "type": "function",
      "name": "has_session",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSessionManager.has_session(session_id) 方法",
      "tags": [
        "TerminalSessionManager",
        "has_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:TerminalSessionManager.close_all",
      "type": "function",
      "name": "close_all",
      "filePath": "src/agentkit/tools/terminal_session.py",
      "layer": "utility",
      "summary": "TerminalSessionManager.close_all() 方法",
      "tags": [
        "TerminalSessionManager",
        "close_all"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:WebCrawlTool",
      "type": "class",
      "name": "WebCrawlTool",
      "filePath": "src/agentkit/tools/web_crawl.py",
      "layer": "utility",
      "summary": "网页抓取工具 - 使用 Crawl4AI，可选依赖未安装时优雅降级",
      "tags": [
        "WebCrawlTool"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:WebCrawlTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/web_crawl.py",
      "layer": "utility",
      "summary": "WebCrawlTool.__init__(name, description, input_schema, output_schema, version, tags) 方法",
      "tags": [
        "WebCrawlTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebCrawlTool._default_input_schema",
      "type": "function",
      "name": "_default_input_schema",
      "filePath": "src/agentkit/tools/web_crawl.py",
      "layer": "utility",
      "summary": "WebCrawlTool._default_input_schema() 方法",
      "tags": [
        "WebCrawlTool",
        "_default_input_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebCrawlTool._default_output_schema",
      "type": "function",
      "name": "_default_output_schema",
      "filePath": "src/agentkit/tools/web_crawl.py",
      "layer": "utility",
      "summary": "WebCrawlTool._default_output_schema() 方法",
      "tags": [
        "WebCrawlTool",
        "_default_output_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebCrawlTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/web_crawl.py",
      "layer": "utility",
      "summary": "WebCrawlTool.execute() 异步方法",
      "tags": [
        "WebCrawlTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "class:WebSearchTool",
      "type": "class",
      "name": "WebSearchTool",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "通用网页搜索工具。",
      "tags": [
        "WebSearchTool"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:WebSearchTool.__init__",
      "type": "function",
      "name": "__init__",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool.__init__(name, description, input_schema, output_schema, version, tags, tavily_api_key, serper_api_key, default_max_results) 方法",
      "tags": [
        "WebSearchTool",
        "__init__"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebSearchTool._default_input_schema",
      "type": "function",
      "name": "_default_input_schema",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool._default_input_schema() 方法",
      "tags": [
        "WebSearchTool",
        "_default_input_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebSearchTool._default_output_schema",
      "type": "function",
      "name": "_default_output_schema",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool._default_output_schema() 方法",
      "tags": [
        "WebSearchTool",
        "_default_output_schema"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebSearchTool.execute",
      "type": "function",
      "name": "execute",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool.execute() 异步方法",
      "tags": [
        "WebSearchTool",
        "execute"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebSearchTool._search_tavily",
      "type": "function",
      "name": "_search_tavily",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool._search_tavily(query, max_results) 异步方法",
      "tags": [
        "WebSearchTool",
        "_search_tavily"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebSearchTool._search_serper",
      "type": "function",
      "name": "_search_serper",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool._search_serper(query, max_results) 异步方法",
      "tags": [
        "WebSearchTool",
        "_search_serper"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebSearchTool._search_duckduckgo",
      "type": "function",
      "name": "_search_duckduckgo",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool._search_duckduckgo(query, max_results) 异步方法",
      "tags": [
        "WebSearchTool",
        "_search_duckduckgo"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebSearchTool._contains_cjk",
      "type": "function",
      "name": "_contains_cjk",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool._contains_cjk(text) 方法",
      "tags": [
        "WebSearchTool",
        "_contains_cjk"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebSearchTool._cjk_to_english_hint",
      "type": "function",
      "name": "_cjk_to_english_hint",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool._cjk_to_english_hint(query) 方法",
      "tags": [
        "WebSearchTool",
        "_cjk_to_english_hint"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebSearchTool._search_duckduckgo_html",
      "type": "function",
      "name": "_search_duckduckgo_html",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool._search_duckduckgo_html(query, max_results) 异步方法",
      "tags": [
        "WebSearchTool",
        "_search_duckduckgo_html"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebSearchTool._search_duckduckgo_instant",
      "type": "function",
      "name": "_search_duckduckgo_instant",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool._search_duckduckgo_instant(query, max_results) 异步方法",
      "tags": [
        "WebSearchTool",
        "_search_duckduckgo_instant"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebSearchTool._search_bing",
      "type": "function",
      "name": "_search_bing",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool._search_bing(query, max_results) 异步方法",
      "tags": [
        "WebSearchTool",
        "_search_bing"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebSearchTool._parse_bing_html",
      "type": "function",
      "name": "_parse_bing_html",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool._parse_bing_html(html, max_results) 方法",
      "tags": [
        "WebSearchTool",
        "_parse_bing_html"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebSearchTool._parse_duckduckgo_html",
      "type": "function",
      "name": "_parse_duckduckgo_html",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool._parse_duckduckgo_html(html, max_results) 方法",
      "tags": [
        "WebSearchTool",
        "_parse_duckduckgo_html"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:WebSearchTool._parse_duckduckgo_html_alt",
      "type": "function",
      "name": "_parse_duckduckgo_html_alt",
      "filePath": "src/agentkit/tools/web_search.py",
      "layer": "utility",
      "summary": "WebSearchTool._parse_duckduckgo_html_alt(html, max_results) 方法",
      "tags": [
        "WebSearchTool",
        "_parse_duckduckgo_html_alt"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_internal_headers",
      "type": "function",
      "name": "_internal_headers",
      "filePath": "configs/geo_handlers.py",
      "layer": "utility",
      "summary": "_internal_headers() 函数 → dict",
      "tags": [
        "_internal_headers"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:handle_citation_task",
      "type": "function",
      "name": "handle_citation_task",
      "filePath": "configs/geo_handlers.py",
      "layer": "utility",
      "summary": "handle_citation_task(task) 异步函数 → dict",
      "tags": [
        "handle_citation_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:handle_monitor_task",
      "type": "function",
      "name": "handle_monitor_task",
      "filePath": "configs/geo_handlers.py",
      "layer": "utility",
      "summary": "handle_monitor_task(task) 异步函数 → dict",
      "tags": [
        "handle_monitor_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:handle_schema_task",
      "type": "function",
      "name": "handle_schema_task",
      "filePath": "configs/geo_handlers.py",
      "layer": "utility",
      "summary": "handle_schema_task(task) 异步函数 → dict",
      "tags": [
        "handle_schema_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_call_internal",
      "type": "function",
      "name": "_call_internal",
      "filePath": "configs/geo_handlers.py",
      "layer": "utility",
      "summary": "_call_internal(path, input_data) 异步函数 → dict",
      "tags": [
        "_call_internal"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_substitute_env_vars",
      "type": "function",
      "name": "_substitute_env_vars",
      "filePath": "configs/geo_server.py",
      "layer": "utility",
      "summary": "_substitute_env_vars(config_path) 函数 → dict",
      "tags": [
        "_substitute_env_vars"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_init_llm_gateway",
      "type": "function",
      "name": "_init_llm_gateway",
      "filePath": "configs/geo_server.py",
      "layer": "utility",
      "summary": "_init_llm_gateway() 函数 → LLMGateway",
      "tags": [
        "_init_llm_gateway"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_init_tool_registry",
      "type": "function",
      "name": "_init_tool_registry",
      "filePath": "configs/geo_server.py",
      "layer": "utility",
      "summary": "_init_tool_registry() 函数 → ToolRegistry",
      "tags": [
        "_init_tool_registry"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_init_skill_registry",
      "type": "function",
      "name": "_init_skill_registry",
      "filePath": "configs/geo_server.py",
      "layer": "utility",
      "summary": "_init_skill_registry(tool_registry) 函数 → SkillRegistry",
      "tags": [
        "_init_skill_registry"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:create_geo_app",
      "type": "function",
      "name": "create_geo_app",
      "filePath": "configs/geo_server.py",
      "layer": "utility",
      "summary": "create_geo_app() 函数 → FastAPI",
      "tags": [
        "create_geo_app"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_internal_headers",
      "type": "function",
      "name": "_internal_headers",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "_internal_headers() 函数 → dict",
      "tags": [
        "_internal_headers"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:execute_single_platform",
      "type": "function",
      "name": "execute_single_platform",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "execute_single_platform(keyword, platform, target_brand, brand_aliases) 异步函数 → dict",
      "tags": [
        "execute_single_platform"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:get_or_create_task",
      "type": "function",
      "name": "get_or_create_task",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "get_or_create_task(query_id, platform) 异步函数 → dict",
      "tags": [
        "get_or_create_task"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:retrieve_knowledge",
      "type": "function",
      "name": "retrieve_knowledge",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "retrieve_knowledge(knowledge_base_ids, query, top_k) 异步函数 → dict",
      "tags": [
        "retrieve_knowledge"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:monitor_check_and_compare",
      "type": "function",
      "name": "monitor_check_and_compare",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "monitor_check_and_compare(record_id) 异步函数 → dict",
      "tags": [
        "monitor_check_and_compare"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:monitor_generate_report",
      "type": "function",
      "name": "monitor_generate_report",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "monitor_generate_report(record_id) 异步函数 → dict",
      "tags": [
        "monitor_generate_report"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:monitor_create_record",
      "type": "function",
      "name": "monitor_create_record",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "monitor_create_record(brand_id, query_keywords, platform, check_interval_hours) 异步函数 → dict",
      "tags": [
        "monitor_create_record"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:fill_schema_with_llm",
      "type": "function",
      "name": "fill_schema_with_llm",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "fill_schema_with_llm(schema_type, brand_info, diagnosis_dimensions) 异步函数 → dict",
      "tags": [
        "fill_schema_with_llm"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:identify_missing_dimensions",
      "type": "function",
      "name": "identify_missing_dimensions",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "identify_missing_dimensions(diagnosis_data, focus_dimensions) 异步函数 → dict",
      "tags": [
        "identify_missing_dimensions"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:competitor_analyze",
      "type": "function",
      "name": "competitor_analyze",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "competitor_analyze(brand_id, analysis_types, period_days) 异步函数 → dict",
      "tags": [
        "competitor_analyze"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:competitor_gap_analysis",
      "type": "function",
      "name": "competitor_gap_analysis",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "competitor_gap_analysis(brand_id, period_days) 异步函数 → dict",
      "tags": [
        "competitor_gap_analysis"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:trend_insight",
      "type": "function",
      "name": "trend_insight",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "trend_insight(brand_id, days, platforms, keywords) 异步函数 → dict",
      "tags": [
        "trend_insight"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:trend_hotspot",
      "type": "function",
      "name": "trend_hotspot",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "trend_hotspot(brand_id, days) 异步函数 → dict",
      "tags": [
        "trend_hotspot"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:search_knowledge",
      "type": "function",
      "name": "search_knowledge",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "search_knowledge(query, knowledge_base_ids, top_k) 异步函数 → dict",
      "tags": [
        "search_knowledge"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:detect_ai_patterns",
      "type": "function",
      "name": "detect_ai_patterns",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "detect_ai_patterns(content, platform_id) 异步函数 → dict",
      "tags": [
        "detect_ai_patterns"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:register_geo_tools",
      "type": "function",
      "name": "register_geo_tools",
      "filePath": "configs/geo_tools.py",
      "layer": "utility",
      "summary": "register_geo_tools(registry) 函数 → None",
      "tags": [
        "register_geo_tools"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:create_message_bus",
      "type": "function",
      "name": "create_message_bus",
      "filePath": "src/agentkit/bus/redis_bus.py",
      "layer": "data",
      "summary": "create_message_bus(backend, redis_url, consumer_group, max_retries) 函数 → BinOp(left=Name(id='InMemoryMessageBus', ctx=Load()), op=BitOr(), right=Name(id='RedisMessageBus', ctx=Load()))",
      "tags": [
        "create_message_bus"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:chat",
      "type": "function",
      "name": "chat",
      "filePath": "src/agentkit/cli/chat.py",
      "layer": "api",
      "summary": "chat(model, agent_name, config, system_prompt, no_stream) 函数",
      "tags": [
        "chat"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_chat_async",
      "type": "function",
      "name": "_chat_async",
      "filePath": "src/agentkit/cli/chat.py",
      "layer": "api",
      "summary": "_chat_async(model, agent_name, config_arg, system_prompt, no_stream) 异步函数 → None",
      "tags": [
        "_chat_async"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_extract_search_keys",
      "type": "function",
      "name": "_extract_search_keys",
      "filePath": "src/agentkit/cli/chat.py",
      "layer": "api",
      "summary": "_extract_search_keys(server_config) 函数 → Subscript(value=Name(id='dict', ctx=Load()), slice=Tuple(elts=[Name(id='str', ctx=Load()), Name(id='str', ctx=Load())], ctx=Load()), ctx=Load())",
      "tags": [
        "_extract_search_keys"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_build_gateway",
      "type": "function",
      "name": "_build_gateway",
      "filePath": "src/agentkit/cli/chat.py",
      "layer": "api",
      "summary": "_build_gateway(server_config) 函数 → LLMGateway",
      "tags": [
        "_build_gateway"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_resolve_default_model",
      "type": "function",
      "name": "_resolve_default_model",
      "filePath": "src/agentkit/cli/chat.py",
      "layer": "api",
      "summary": "_resolve_default_model(server_config) 函数 → str",
      "tags": [
        "_resolve_default_model"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_print_help",
      "type": "function",
      "name": "_print_help",
      "filePath": "src/agentkit/cli/chat.py",
      "layer": "api",
      "summary": "_print_help() 函数 → None",
      "tags": [
        "_print_help"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_write_file",
      "type": "function",
      "name": "_write_file",
      "filePath": "src/agentkit/cli/init.py",
      "layer": "api",
      "summary": "_write_file(path, content, force) 函数 → bool",
      "tags": [
        "_write_file"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:init",
      "type": "function",
      "name": "init",
      "filePath": "src/agentkit/cli/init.py",
      "layer": "api",
      "summary": "init(output_dir, non_interactive, force) 函数",
      "tags": [
        "init"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:gui",
      "type": "function",
      "name": "gui",
      "filePath": "src/agentkit/cli/main.py",
      "layer": "api",
      "summary": "gui(host, port, config, no_open) 函数",
      "tags": [
        "gui"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:serve",
      "type": "function",
      "name": "serve",
      "filePath": "src/agentkit/cli/main.py",
      "layer": "api",
      "summary": "serve(host, port, workers, reload, config, task_store_backend, task_store_redis_url) 函数",
      "tags": [
        "serve"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:version",
      "type": "function",
      "name": "version",
      "filePath": "src/agentkit/cli/main.py",
      "layer": "api",
      "summary": "version() 函数",
      "tags": [
        "version"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:doctor",
      "type": "function",
      "name": "doctor",
      "filePath": "src/agentkit/cli/main.py",
      "layer": "api",
      "summary": "doctor(host, port) 函数",
      "tags": [
        "doctor"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:needs_onboarding",
      "type": "function",
      "name": "needs_onboarding",
      "filePath": "src/agentkit/cli/onboarding.py",
      "layer": "api",
      "summary": "needs_onboarding(config_arg) → bool: 检查是否需要 onboarding，使用 load_config_with_dotenv 加载配置并检查 has_llm_provider()",
      "tags": [
        "needs_onboarding"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:run_onboarding",
      "type": "function",
      "name": "run_onboarding",
      "filePath": "src/agentkit/cli/onboarding.py",
      "layer": "api",
      "summary": "run_onboarding(output_dir, config_arg) → str | None: 交互式配置向导，merge-update 模式（仅更新 LLM section，保留其他配置），bailian-coding provider 预设",
      "tags": [
        "run_onboarding"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_generate_api_key",
      "type": "function",
      "name": "_generate_api_key",
      "filePath": "src/agentkit/cli/pair.py",
      "layer": "api",
      "summary": "_generate_api_key() 函数 → str",
      "tags": [
        "_generate_api_key"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_load_clients",
      "type": "function",
      "name": "_load_clients",
      "filePath": "src/agentkit/cli/pair.py",
      "layer": "api",
      "summary": "_load_clients(config_dir) 函数 → dict",
      "tags": [
        "_load_clients"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_save_clients",
      "type": "function",
      "name": "_save_clients",
      "filePath": "src/agentkit/cli/pair.py",
      "layer": "api",
      "summary": "_save_clients(config_dir, clients) 函数 → None",
      "tags": [
        "_save_clients"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:pair",
      "type": "function",
      "name": "pair",
      "filePath": "src/agentkit/cli/pair.py",
      "layer": "api",
      "summary": "pair(name, skills_dir, config_dir, list_clients, revoke, server_url) 函数",
      "tags": [
        "pair"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:list_skills",
      "type": "function",
      "name": "list_skills",
      "filePath": "src/agentkit/cli/skill.py",
      "layer": "api",
      "summary": "list_skills(server_url) 函数",
      "tags": [
        "list_skills"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:load_skill",
      "type": "function",
      "name": "load_skill",
      "filePath": "src/agentkit/cli/skill.py",
      "layer": "api",
      "summary": "load_skill(path) 函数",
      "tags": [
        "load_skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:skill_create",
      "type": "function",
      "name": "skill_create",
      "filePath": "src/agentkit/cli/skill.py",
      "layer": "api",
      "summary": "skill_create(name, output_dir) 函数",
      "tags": [
        "skill_create"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:skill_info",
      "type": "function",
      "name": "skill_info",
      "filePath": "src/agentkit/cli/skill.py",
      "layer": "api",
      "summary": "skill_info(name, server_url) 函数",
      "tags": [
        "skill_info"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:submit",
      "type": "function",
      "name": "submit",
      "filePath": "src/agentkit/cli/task.py",
      "layer": "api",
      "summary": "submit(input, input_file, skill, agent, mode, server_url, config) 函数",
      "tags": [
        "submit"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_submit_remote",
      "type": "function",
      "name": "_submit_remote",
      "filePath": "src/agentkit/cli/task.py",
      "layer": "api",
      "summary": "_submit_remote(input_data, skill, agent, mode, server_url) 函数",
      "tags": [
        "_submit_remote"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_submit_local",
      "type": "function",
      "name": "_submit_local",
      "filePath": "src/agentkit/cli/task.py",
      "layer": "api",
      "summary": "_submit_local(input_data, skill, agent, mode, config_path) 函数",
      "tags": [
        "_submit_local"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:status",
      "type": "function",
      "name": "status",
      "filePath": "src/agentkit/cli/task.py",
      "layer": "api",
      "summary": "status(task_id, server_url) 函数",
      "tags": [
        "status"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:list_tasks",
      "type": "function",
      "name": "list_tasks",
      "filePath": "src/agentkit/cli/task.py",
      "layer": "api",
      "summary": "list_tasks(status_filter, limit, server_url) 函数",
      "tags": [
        "list_tasks"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:cancel",
      "type": "function",
      "name": "cancel",
      "filePath": "src/agentkit/cli/task.py",
      "layer": "api",
      "summary": "cancel(task_id, server_url) 函数",
      "tags": [
        "cancel"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:usage",
      "type": "function",
      "name": "usage",
      "filePath": "src/agentkit/cli/usage.py",
      "layer": "api",
      "summary": "usage(agent, format, server_url) 函数",
      "tags": [
        "usage"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:create_compressor",
      "type": "function",
      "name": "create_compressor",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "create_compressor(config) 函数 → BinOp(left=Name(id='CompressionStrategy', ctx=Load()), op=BitOr(), right=Constant(value=None))",
      "tags": [
        "create_compressor"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:render_cached",
      "type": "function",
      "name": "render_cached",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "render_cached(template, variables) 函数 → Subscript(value=Name(id='list', ctx=Load()), slice=Subscript(value=Name(id='dict', ctx=Load()), slice=Tuple(elts=[Name(id='str', ctx=Load()), Name(id='str', ctx=Load())], ctx=Load()), ctx=Load()), ctx=Load())",
      "tags": [
        "render_cached"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:clear_cache",
      "type": "function",
      "name": "clear_cache",
      "filePath": "src/agentkit/core/compressor.py",
      "layer": "service",
      "summary": "clear_cache(template) 函数 → None",
      "tags": [
        "clear_cache"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_validate_callback_url",
      "type": "function",
      "name": "_validate_callback_url",
      "filePath": "src/agentkit/core/dispatcher.py",
      "layer": "service",
      "summary": "_validate_callback_url(url) 函数 → bool",
      "tags": [
        "_validate_callback_url"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_is_json_content",
      "type": "function",
      "name": "_is_json_content",
      "filePath": "src/agentkit/core/headroom_compressor.py",
      "layer": "service",
      "summary": "_is_json_content(text) 函数 → bool",
      "tags": [
        "_is_json_content"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_is_code_content",
      "type": "function",
      "name": "_is_code_content",
      "filePath": "src/agentkit/core/headroom_compressor.py",
      "layer": "service",
      "summary": "_is_code_content(text) 函数 → bool",
      "tags": [
        "_is_code_content"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:setup_structured_logging",
      "type": "function",
      "name": "setup_structured_logging",
      "filePath": "src/agentkit/core/logging.py",
      "layer": "service",
      "summary": "setup_structured_logging(level) 函数 → None",
      "tags": [
        "setup_structured_logging"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:get_logger",
      "type": "function",
      "name": "get_logger",
      "filePath": "src/agentkit/core/logging.py",
      "layer": "service",
      "summary": "get_logger(name) 函数 → Attribute(value=Name(id='logging', ctx=Load()), attr='LoggerAdapter', ctx=Load())",
      "tags": [
        "get_logger"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:main",
      "type": "function",
      "name": "main",
      "filePath": "src/agentkit/core/standalone.py",
      "layer": "service",
      "summary": "main() 异步函数",
      "tags": [
        "main"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:create_evolution_store",
      "type": "function",
      "name": "create_evolution_store",
      "filePath": "src/agentkit/evolution/evolution_store.py",
      "layer": "utility",
      "summary": "create_evolution_store(backend, db_path, session_factory, evolution_model, database_url) 函数 → BinOp(left=BinOp(left=Name(id='EvolutionStore', ctx=Load()), op=BitOr(), right=Name(id='PersistentEvolutionStore', ctx=Load())), op=BitOr(), right=Name(id='InMemoryEvolutionStore', ctx=Load()))",
      "tags": [
        "create_evolution_store"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_parse_time_window",
      "type": "function",
      "name": "_parse_time_window",
      "filePath": "src/agentkit/evolution/experience_store.py",
      "layer": "utility",
      "summary": "_parse_time_window(window) 函数 → timedelta",
      "tags": [
        "_parse_time_window"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_utcnow",
      "type": "function",
      "name": "_utcnow",
      "filePath": "src/agentkit/evolution/pg_store.py",
      "layer": "utility",
      "summary": "_utcnow() 函数 → datetime",
      "tags": [
        "_utcnow"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_compute_name_similarity",
      "type": "function",
      "name": "_compute_name_similarity",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "_compute_name_similarity(step_name, step_description, historical_step_name) 函数 → float",
      "tags": [
        "_compute_name_similarity"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_extract_keywords",
      "type": "function",
      "name": "_extract_keywords",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "_extract_keywords(text) 函数 → Subscript(value=Name(id='frozenset', ctx=Load()), slice=Name(id='str', ctx=Load()), ctx=Load())",
      "tags": [
        "_extract_keywords"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_determine_warning_level",
      "type": "function",
      "name": "_determine_warning_level",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "_determine_warning_level(failure_rate) 函数 → WarningLevel",
      "tags": [
        "_determine_warning_level"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_warning_level_order",
      "type": "function",
      "name": "_warning_level_order",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "_warning_level_order(level) 函数 → int",
      "tags": [
        "_warning_level_order"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_build_suggestion",
      "type": "function",
      "name": "_build_suggestion",
      "filePath": "src/agentkit/evolution/pitfall_detector.py",
      "layer": "utility",
      "summary": "_build_suggestion(stats, failure_rate) 函数 → str",
      "tags": [
        "_build_suggestion"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:create_prompt_optimizer",
      "type": "function",
      "name": "create_prompt_optimizer",
      "filePath": "src/agentkit/evolution/prompt_optimizer.py",
      "layer": "utility",
      "summary": "create_prompt_optimizer(optimizer_type, llm_gateway) 函数 → BinOp(left=Name(id='BootstrapPromptOptimizer', ctx=Load()), op=BitOr(), right=Name(id='LLMPromptOptimizer', ctx=Load()))",
      "tags": [
        "create_prompt_optimizer"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_serialize_response",
      "type": "function",
      "name": "_serialize_response",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "_serialize_response(response) 函数 → dict",
      "tags": [
        "_serialize_response"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_deserialize_response",
      "type": "function",
      "name": "_deserialize_response",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "_deserialize_response(data) 函数 → LLMResponse",
      "tags": [
        "_deserialize_response"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_serialize_entry",
      "type": "function",
      "name": "_serialize_entry",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "_serialize_entry(entry) 函数 → dict",
      "tags": [
        "_serialize_entry"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_deserialize_entry",
      "type": "function",
      "name": "_deserialize_entry",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "_deserialize_entry(data) 函数 → CacheEntry",
      "tags": [
        "_deserialize_entry"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:create_llm_cache",
      "type": "function",
      "name": "create_llm_cache",
      "filePath": "src/agentkit/llm/cache.py",
      "layer": "utility",
      "summary": "create_llm_cache(backend, redis_url, max_entries, exact_ttl, semantic_ttl, similarity_threshold) 函数 → LLMCache",
      "tags": [
        "create_llm_cache"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:generate_cache_key",
      "type": "function",
      "name": "generate_cache_key",
      "filePath": "src/agentkit/llm/cache_key.py",
      "layer": "utility",
      "summary": "generate_cache_key(model, messages, temperature, tools, tool_choice, max_tokens) 函数 → str",
      "tags": [
        "generate_cache_key"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_extract_system_prompt",
      "type": "function",
      "name": "_extract_system_prompt",
      "filePath": "src/agentkit/llm/cache_key.py",
      "layer": "utility",
      "summary": "_extract_system_prompt(messages) 函数 → str",
      "tags": [
        "_extract_system_prompt"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_hash_str",
      "type": "function",
      "name": "_hash_str",
      "filePath": "src/agentkit/llm/cache_key.py",
      "layer": "utility",
      "summary": "_hash_str(s) 函数 → str",
      "tags": [
        "_hash_str"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_hash_json",
      "type": "function",
      "name": "_hash_json",
      "filePath": "src/agentkit/llm/cache_key.py",
      "layer": "utility",
      "summary": "_hash_json(obj) 函数 → str",
      "tags": [
        "_hash_json"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:create_usage_store",
      "type": "function",
      "name": "create_usage_store",
      "filePath": "src/agentkit/llm/providers/usage_store.py",
      "layer": "utility",
      "summary": "create_usage_store(backend, redis_url) 函数 → UsageStore",
      "tags": [
        "create_usage_store"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_is_retryable_error",
      "type": "function",
      "name": "_is_retryable_error",
      "filePath": "src/agentkit/llm/retry.py",
      "layer": "utility",
      "summary": "_is_retryable_error(error, retryable_status_codes) 函数 → bool",
      "tags": [
        "_is_retryable_error"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_escape_cql",
      "type": "function",
      "name": "_escape_cql",
      "filePath": "src/agentkit/memory/adapters/confluence.py",
      "layer": "data",
      "summary": "_escape_cql(value) 函数 → str",
      "tags": [
        "_escape_cql"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_detect_format",
      "type": "function",
      "name": "_detect_format",
      "filePath": "src/agentkit/memory/document_loader.py",
      "layer": "data",
      "summary": "_detect_format(filename) 函数 → str",
      "tags": [
        "_detect_format"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_loader_doc_to_kb_doc",
      "type": "function",
      "name": "_loader_doc_to_kb_doc",
      "filePath": "src/agentkit/memory/local_rag.py",
      "layer": "data",
      "summary": "_loader_doc_to_kb_doc(loader_doc) 函数 → Document",
      "tags": [
        "_loader_doc_to_kb_doc"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:create_episodic_session_factory",
      "type": "function",
      "name": "create_episodic_session_factory",
      "filePath": "src/agentkit/memory/models.py",
      "layer": "data",
      "summary": "create_episodic_session_factory(database_url) 函数",
      "tags": [
        "create_episodic_session_factory"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:ensure_episodic_table",
      "type": "function",
      "name": "ensure_episodic_table",
      "filePath": "src/agentkit/memory/models.py",
      "layer": "data",
      "summary": "ensure_episodic_table(database_url) 异步函数 → None",
      "tags": [
        "ensure_episodic_table"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_content_hash",
      "type": "function",
      "name": "_content_hash",
      "filePath": "src/agentkit/memory/multi_source_retriever.py",
      "layer": "data",
      "summary": "_content_hash(content) 函数 → str",
      "tags": [
        "_content_hash"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:create_query_transformer",
      "type": "function",
      "name": "create_query_transformer",
      "filePath": "src/agentkit/memory/query_transformer.py",
      "layer": "data",
      "summary": "create_query_transformer(strategy, llm_gateway, synonyms, max_sub_queries) 函数 → QueryTransformerBase",
      "tags": [
        "create_query_transformer"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_estimate_tokens",
      "type": "function",
      "name": "_estimate_tokens",
      "filePath": "src/agentkit/memory/retriever.py",
      "layer": "data",
      "summary": "_estimate_tokens(text) 函数 → int",
      "tags": [
        "_estimate_tokens"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:execute_with_retry",
      "type": "function",
      "name": "execute_with_retry",
      "filePath": "src/agentkit/orchestrator/retry.py",
      "layer": "service",
      "summary": "execute_with_retry(func, retry_policy, step_name) 异步函数 → Any",
      "tags": [
        "execute_with_retry"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:create_cascade_state_store",
      "type": "function",
      "name": "create_cascade_state_store",
      "filePath": "src/agentkit/quality/cascade_state_store.py",
      "layer": "utility",
      "summary": "create_cascade_state_store(backend, redis_url, session_ttl) 函数 → CascadeStateStore",
      "tags": [
        "create_cascade_state_store"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_get_pool",
      "type": "function",
      "name": "_get_pool",
      "filePath": "src/agentkit/server/routes/agents.py",
      "layer": "api",
      "summary": "_get_pool(request) 函数",
      "tags": [
        "_get_pool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_get_skill_registry",
      "type": "function",
      "name": "_get_skill_registry",
      "filePath": "src/agentkit/server/routes/agents.py",
      "layer": "api",
      "summary": "_get_skill_registry(request) 函数",
      "tags": [
        "_get_skill_registry"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:create_agent",
      "type": "function",
      "name": "create_agent",
      "filePath": "src/agentkit/server/routes/agents.py",
      "layer": "api",
      "summary": "create_agent(request, req) 异步函数",
      "tags": [
        "create_agent"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:list_agents",
      "type": "function",
      "name": "list_agents",
      "filePath": "src/agentkit/server/routes/agents.py",
      "layer": "api",
      "summary": "list_agents(req) 异步函数",
      "tags": [
        "list_agents"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:get_agent",
      "type": "function",
      "name": "get_agent",
      "filePath": "src/agentkit/server/routes/agents.py",
      "layer": "api",
      "summary": "get_agent(name, req) 异步函数",
      "tags": [
        "get_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:delete_agent",
      "type": "function",
      "name": "delete_agent",
      "filePath": "src/agentkit/server/routes/agents.py",
      "layer": "api",
      "summary": "delete_agent(name, req) 异步函数",
      "tags": [
        "delete_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_get_evolution_store",
      "type": "function",
      "name": "_get_evolution_store",
      "filePath": "src/agentkit/server/routes/evolution.py",
      "layer": "api",
      "summary": "_get_evolution_store(request) 函数",
      "tags": [
        "_get_evolution_store"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:list_evolution_events",
      "type": "function",
      "name": "list_evolution_events",
      "filePath": "src/agentkit/server/routes/evolution.py",
      "layer": "api",
      "summary": "list_evolution_events(agent_name, event_type, limit, offset, req) 异步函数",
      "tags": [
        "list_evolution_events"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:get_skill_versions",
      "type": "function",
      "name": "get_skill_versions",
      "filePath": "src/agentkit/server/routes/evolution.py",
      "layer": "api",
      "summary": "get_skill_versions(skill_name, req) 异步函数",
      "tags": [
        "get_skill_versions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:trigger_evolution",
      "type": "function",
      "name": "trigger_evolution",
      "filePath": "src/agentkit/server/routes/evolution.py",
      "layer": "api",
      "summary": "trigger_evolution(request, req) 异步函数",
      "tags": [
        "trigger_evolution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:list_ab_tests",
      "type": "function",
      "name": "list_ab_tests",
      "filePath": "src/agentkit/server/routes/evolution.py",
      "layer": "api",
      "summary": "list_ab_tests(status, limit, req) 异步函数",
      "tags": [
        "list_ab_tests"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_verify_api_key",
      "type": "function",
      "name": "_verify_api_key",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "_verify_api_key(request, api_key_header, api_key_query) 异步函数 → None",
      "tags": [
        "_verify_api_key"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_get_experience_store",
      "type": "function",
      "name": "_get_experience_store",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "_get_experience_store(request) 函数",
      "tags": [
        "_get_experience_store"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_get_pitfall_detector",
      "type": "function",
      "name": "_get_pitfall_detector",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "_get_pitfall_detector(request) 函数",
      "tags": [
        "_get_pitfall_detector"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_get_path_optimizer",
      "type": "function",
      "name": "_get_path_optimizer",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "_get_path_optimizer(request) 函数",
      "tags": [
        "_get_path_optimizer"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:list_experiences",
      "type": "function",
      "name": "list_experiences",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "list_experiences(task_type, outcome, limit, req, _auth) 异步函数",
      "tags": [
        "list_experiences"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:record_experience",
      "type": "function",
      "name": "record_experience",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "record_experience(body, req, _auth) 异步函数",
      "tags": [
        "record_experience"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:get_metrics",
      "type": "function",
      "name": "get_metrics",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "get_metrics(period, req, _auth) 异步函数",
      "tags": [
        "get_metrics"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_generate_trends",
      "type": "function",
      "name": "_generate_trends",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "_generate_trends(metrics_list, period) 函数 → Subscript(value=Name(id='list', ctx=Load()), slice=Name(id='dict', ctx=Load()), ctx=Load())",
      "tags": [
        "_generate_trends"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_compute_metrics_from_memory",
      "type": "function",
      "name": "_compute_metrics_from_memory",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "_compute_metrics_from_memory(period) 函数 → Subscript(value=Name(id='tuple', ctx=Load()), slice=Tuple(elts=[Name(id='dict', ctx=Load()), Subscript(value=Name(id='list', ctx=Load()), slice=Name(id='dict', ctx=Load()), ctx=Load())], ctx=Load()), ctx=Load())",
      "tags": [
        "_compute_metrics_from_memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:get_usage",
      "type": "function",
      "name": "get_usage",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "get_usage(period, req, _auth) 异步函数",
      "tags": [
        "get_usage"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:check_pitfalls",
      "type": "function",
      "name": "check_pitfalls",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "check_pitfalls(task_type, steps, req, _auth) 异步函数",
      "tags": [
        "check_pitfalls"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:list_path_optimizations",
      "type": "function",
      "name": "list_path_optimizations",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "list_path_optimizations(task_type, limit, req, _auth) 异步函数",
      "tags": [
        "list_path_optimizations"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:record_path_optimization",
      "type": "function",
      "name": "record_path_optimization",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "record_path_optimization(body, req, _auth) 异步函数",
      "tags": [
        "record_path_optimization"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:evolution_dashboard_ws",
      "type": "function",
      "name": "evolution_dashboard_ws",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "evolution_dashboard_ws(websocket) 异步函数",
      "tags": [
        "evolution_dashboard_ws"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_broadcast_event",
      "type": "function",
      "name": "_broadcast_event",
      "filePath": "src/agentkit/server/routes/evolution_dashboard.py",
      "layer": "api",
      "summary": "_broadcast_event(event_type, data) 异步函数",
      "tags": [
        "_broadcast_event"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:health_check",
      "type": "function",
      "name": "health_check",
      "filePath": "src/agentkit/server/routes/health.py",
      "layer": "api",
      "summary": "health_check(request) 异步函数",
      "tags": [
        "health_check"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_verify_api_key",
      "type": "function",
      "name": "_verify_api_key",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "_verify_api_key(request, api_key_header, api_key_query) 异步函数 → None",
      "tags": [
        "_verify_api_key"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:list_sources",
      "type": "function",
      "name": "list_sources",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "list_sources(req, _auth) 异步函数",
      "tags": [
        "list_sources"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:add_source",
      "type": "function",
      "name": "add_source",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "add_source(request, req, _auth) 异步函数",
      "tags": [
        "add_source"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:remove_source",
      "type": "function",
      "name": "remove_source",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "remove_source(source_id, req, _auth) 异步函数",
      "tags": [
        "remove_source"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:sync_source",
      "type": "function",
      "name": "sync_source",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "sync_source(source_id, _auth) 异步函数",
      "tags": [
        "sync_source"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:update_source",
      "type": "function",
      "name": "update_source",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "update_source(source_id, data, _auth) 异步函数",
      "tags": [
        "update_source"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:list_documents",
      "type": "function",
      "name": "list_documents",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "list_documents(source_id, _auth) 异步函数",
      "tags": [
        "list_documents"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:delete_document",
      "type": "function",
      "name": "delete_document",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "delete_document(document_id, _auth) 异步函数",
      "tags": [
        "delete_document"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:upload_document",
      "type": "function",
      "name": "upload_document",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "upload_document(req, file, source_id, _auth) 异步函数",
      "tags": [
        "upload_document"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:search_knowledge",
      "type": "function",
      "name": "search_knowledge",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "search_knowledge(request, req, _auth) 异步函数",
      "tags": [
        "search_knowledge"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:check_source_health",
      "type": "function",
      "name": "check_source_health",
      "filePath": "src/agentkit/server/routes/kb_management.py",
      "layer": "api",
      "summary": "check_source_health(source_id, req, _auth) 异步函数",
      "tags": [
        "check_source_health"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:get_usage",
      "type": "function",
      "name": "get_usage",
      "filePath": "src/agentkit/server/routes/llm.py",
      "layer": "api",
      "summary": "get_usage(agent_name, req) 异步函数",
      "tags": [
        "get_usage"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_get_memory_retriever",
      "type": "function",
      "name": "_get_memory_retriever",
      "filePath": "src/agentkit/server/routes/memory.py",
      "layer": "api",
      "summary": "_get_memory_retriever(request) 函数",
      "tags": [
        "_get_memory_retriever"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:search_episodic_memory",
      "type": "function",
      "name": "search_episodic_memory",
      "filePath": "src/agentkit/server/routes/memory.py",
      "layer": "api",
      "summary": "search_episodic_memory(query, top_k, agent_name, req) 异步函数",
      "tags": [
        "search_episodic_memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:search_semantic_memory",
      "type": "function",
      "name": "search_semantic_memory",
      "filePath": "src/agentkit/server/routes/memory.py",
      "layer": "api",
      "summary": "search_semantic_memory(query, knowledge_base_ids, top_k, req) 异步函数",
      "tags": [
        "search_semantic_memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:delete_episodic_memory",
      "type": "function",
      "name": "delete_episodic_memory",
      "filePath": "src/agentkit/server/routes/memory.py",
      "layer": "api",
      "summary": "delete_episodic_memory(key, req) 异步函数",
      "tags": [
        "delete_episodic_memory"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:get_metrics",
      "type": "function",
      "name": "get_metrics",
      "filePath": "src/agentkit/server/routes/metrics.py",
      "layer": "api",
      "summary": "get_metrics(request) 异步函数",
      "tags": [
        "get_metrics"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_verify_api_key",
      "type": "function",
      "name": "_verify_api_key",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "_verify_api_key(request, api_key_header, api_key_query) 异步函数 → None",
      "tags": [
        "_verify_api_key"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_resolve_for_chat",
      "type": "function",
      "name": "_resolve_for_chat",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "_resolve_for_chat(request, req) 异步函数 → Subscript(value=Name(id='tuple', ctx=Load()), slice=Tuple(elts=[Name(id='Any', ctx=Load()), Name(id='Any', ctx=Load()), BinOp(left=Name(id='str', ctx=Load()), op=BitOr(), right=Constant(value=None)), BinOp(left=Name(id='str', ctx=Load()), op=BitOr(), right=Constant(value=None)), BinOp(left=Name(id='float', ctx=Load()), op=BitOr(), right=Constant(value=None))], ctx=Load()), ctx=Load())",
      "tags": [
        "_resolve_for_chat"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:chat",
      "type": "function",
      "name": "chat",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "chat(request, req, _auth) 异步函数",
      "tags": [
        "chat"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:chat_stream",
      "type": "function",
      "name": "chat_stream",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "chat_stream(request, req, _auth) 异步函数",
      "tags": [
        "chat_stream"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:get_capabilities",
      "type": "function",
      "name": "get_capabilities",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "get_capabilities(req, _auth) 异步函数",
      "tags": [
        "get_capabilities"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:list_conversations",
      "type": "function",
      "name": "list_conversations",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "list_conversations(limit, _auth) 异步函数",
      "tags": [
        "list_conversations"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_derive_conversation_title",
      "type": "function",
      "name": "_derive_conversation_title",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "_derive_conversation_title(conv) 函数 → str",
      "tags": [
        "_derive_conversation_title"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:get_conversation",
      "type": "function",
      "name": "get_conversation",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "get_conversation(conversation_id, limit, _auth) 异步函数",
      "tags": [
        "get_conversation"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:portal_websocket",
      "type": "function",
      "name": "portal_websocket",
      "filePath": "src/agentkit/server/routes/portal.py",
      "layer": "api",
      "summary": "portal_websocket(websocket) 异步函数",
      "tags": [
        "portal_websocket"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_mask_api_key",
      "type": "function",
      "name": "_mask_api_key",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "_mask_api_key(key) 函数 → str",
      "tags": [
        "_mask_api_key"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_read_yaml_config",
      "type": "function",
      "name": "_read_yaml_config",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "_read_yaml_config(config_path) 函数 → dict",
      "tags": [
        "_read_yaml_config"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_write_yaml_config",
      "type": "function",
      "name": "_write_yaml_config",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "_write_yaml_config(config_path, data) → None: 写回 YAML 配置，使用 _reverse_resolve_env 保留 ${VAR} 引用，ruamel.yaml 保留注释格式",
      "tags": [
        "_write_yaml_config"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_get_config_path",
      "type": "function",
      "name": "_get_config_path",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "_get_config_path(request) 函数 → str",
      "tags": [
        "_get_config_path"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:get_llm_settings",
      "type": "function",
      "name": "get_llm_settings",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "get_llm_settings(request) 异步函数",
      "tags": [
        "get_llm_settings"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:update_llm_settings",
      "type": "function",
      "name": "update_llm_settings",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "update_llm_settings(request, update) 异步函数: 更新 LLM 配置，明文 API Key 写入 .env（_write_env_var），YAML 中保留 ${VAR} 引用",
      "tags": [
        "update_llm_settings"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:get_skills_settings",
      "type": "function",
      "name": "get_skills_settings",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "get_skills_settings(request) 异步函数",
      "tags": [
        "get_skills_settings"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:update_skills_settings",
      "type": "function",
      "name": "update_skills_settings",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "update_skills_settings(request, update) 异步函数",
      "tags": [
        "update_skills_settings"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:get_kb_settings",
      "type": "function",
      "name": "get_kb_settings",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "get_kb_settings(request) 异步函数",
      "tags": [
        "get_kb_settings"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:update_kb_settings",
      "type": "function",
      "name": "update_kb_settings",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "update_kb_settings(request, update) 异步函数",
      "tags": [
        "update_kb_settings"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:get_general_settings",
      "type": "function",
      "name": "get_general_settings",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "get_general_settings(request) 异步函数",
      "tags": [
        "get_general_settings"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:update_general_settings",
      "type": "function",
      "name": "update_general_settings",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "update_general_settings(request, update) 异步函数",
      "tags": [
        "update_general_settings"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_skill_to_info",
      "type": "function",
      "name": "_skill_to_info",
      "filePath": "src/agentkit/server/routes/skill_management.py",
      "layer": "api",
      "summary": "_skill_to_info(skill) 函数 → Subscript(value=Name(id='dict', ctx=Load()), slice=Tuple(elts=[Name(id='str', ctx=Load()), Name(id='Any', ctx=Load())], ctx=Load()), ctx=Load())",
      "tags": [
        "_skill_to_info"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_skill_to_detail",
      "type": "function",
      "name": "_skill_to_detail",
      "filePath": "src/agentkit/server/routes/skill_management.py",
      "layer": "api",
      "summary": "_skill_to_detail(skill) 函数 → Subscript(value=Name(id='dict', ctx=Load()), slice=Tuple(elts=[Name(id='str', ctx=Load()), Name(id='Any', ctx=Load())], ctx=Load()), ctx=Load())",
      "tags": [
        "_skill_to_detail"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:list_skills",
      "type": "function",
      "name": "list_skills",
      "filePath": "src/agentkit/server/routes/skill_management.py",
      "layer": "api",
      "summary": "list_skills(req, capability, page, size) 异步函数",
      "tags": [
        "list_skills"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:get_skill_detail",
      "type": "function",
      "name": "get_skill_detail",
      "filePath": "src/agentkit/server/routes/skill_management.py",
      "layer": "api",
      "summary": "get_skill_detail(skill_name, req) 异步函数",
      "tags": [
        "get_skill_detail"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:check_skill_health",
      "type": "function",
      "name": "check_skill_health",
      "filePath": "src/agentkit/server/routes/skill_management.py",
      "layer": "api",
      "summary": "check_skill_health(skill_name, req) 异步函数",
      "tags": [
        "check_skill_health"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:list_capabilities",
      "type": "function",
      "name": "list_capabilities",
      "filePath": "src/agentkit/server/routes/skill_management.py",
      "layer": "api",
      "summary": "list_capabilities(req) 异步函数",
      "tags": [
        "list_capabilities"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:reload_skill",
      "type": "function",
      "name": "reload_skill",
      "filePath": "src/agentkit/server/routes/skill_management.py",
      "layer": "api",
      "summary": "reload_skill(skill_name, req) 异步函数",
      "tags": [
        "reload_skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_validate_skill_name",
      "type": "function",
      "name": "_validate_skill_name",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "_validate_skill_name(name) 函数 → str",
      "tags": [
        "_validate_skill_name"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_get_skills_dir",
      "type": "function",
      "name": "_get_skills_dir",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "_get_skills_dir(req) 函数 → str",
      "tags": [
        "_get_skills_dir"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_validate_source_url",
      "type": "function",
      "name": "_validate_source_url",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "_validate_source_url(source) 函数 → None",
      "tags": [
        "_validate_source_url"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_validate_yaml_content",
      "type": "function",
      "name": "_validate_yaml_content",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "_validate_yaml_content(content) 函数 → dict",
      "tags": [
        "_validate_yaml_content"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:register_skill",
      "type": "function",
      "name": "register_skill",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "register_skill(request, req) 异步函数",
      "tags": [
        "register_skill"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:list_skills",
      "type": "function",
      "name": "list_skills",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "list_skills(req) 异步函数",
      "tags": [
        "list_skills"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:mention_suggest",
      "type": "function",
      "name": "mention_suggest",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "mention_suggest(q, req) 异步函数",
      "tags": [
        "mention_suggest"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:install_skill",
      "type": "function",
      "name": "install_skill",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "install_skill(request, req) 异步函数",
      "tags": [
        "install_skill"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:uninstall_skill",
      "type": "function",
      "name": "uninstall_skill",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "uninstall_skill(name, req) 异步函数",
      "tags": [
        "uninstall_skill"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:create_pipeline",
      "type": "function",
      "name": "create_pipeline",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "create_pipeline(request, req) 异步函数",
      "tags": [
        "create_pipeline"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:list_pipelines",
      "type": "function",
      "name": "list_pipelines",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "list_pipelines(req) 异步函数",
      "tags": [
        "list_pipelines"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:execute_pipeline",
      "type": "function",
      "name": "execute_pipeline",
      "filePath": "src/agentkit/server/routes/skills.py",
      "layer": "api",
      "summary": "execute_pipeline(name, request, req) 异步函数",
      "tags": [
        "execute_pipeline"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_validate_input_size",
      "type": "function",
      "name": "_validate_input_size",
      "filePath": "src/agentkit/server/routes/tasks.py",
      "layer": "api",
      "summary": "_validate_input_size(input_data) 函数 → None",
      "tags": [
        "_validate_input_size"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:list_tasks",
      "type": "function",
      "name": "list_tasks",
      "filePath": "src/agentkit/server/routes/tasks.py",
      "layer": "api",
      "summary": "list_tasks(status, limit, req) 异步函数",
      "tags": [
        "list_tasks"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:submit_task",
      "type": "function",
      "name": "submit_task",
      "filePath": "src/agentkit/server/routes/tasks.py",
      "layer": "api",
      "summary": "submit_task(request, req) 异步函数",
      "tags": [
        "submit_task"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:get_task_status",
      "type": "function",
      "name": "get_task_status",
      "filePath": "src/agentkit/server/routes/tasks.py",
      "layer": "api",
      "summary": "get_task_status(task_id, req) 异步函数",
      "tags": [
        "get_task_status"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:cancel_task",
      "type": "function",
      "name": "cancel_task",
      "filePath": "src/agentkit/server/routes/tasks.py",
      "layer": "api",
      "summary": "cancel_task(task_id, req) 异步函数",
      "tags": [
        "cancel_task"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:stream_task",
      "type": "function",
      "name": "stream_task",
      "filePath": "src/agentkit/server/routes/tasks.py",
      "layer": "api",
      "summary": "stream_task(request, req) 异步函数",
      "tags": [
        "stream_task"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_get_or_create_session",
      "type": "function",
      "name": "_get_or_create_session",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "_get_or_create_session(session_id) 函数 → TerminalSessionState",
      "tags": [
        "_get_or_create_session"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_cleanup_session",
      "type": "function",
      "name": "_cleanup_session",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "_cleanup_session(session_id) 函数 → None",
      "tags": [
        "_cleanup_session"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_is_single_command_dangerous",
      "type": "function",
      "name": "_is_single_command_dangerous",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "_is_single_command_dangerous(command) 函数 → bool",
      "tags": [
        "_is_single_command_dangerous"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_is_dangerous",
      "type": "function",
      "name": "_is_dangerous",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "_is_dangerous(command) 函数 → bool",
      "tags": [
        "_is_dangerous"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_check_command_safety",
      "type": "function",
      "name": "_check_command_safety",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "_check_command_safety(command, session_id) 函数 → Subscript(value=Name(id='dict', ctx=Load()), slice=Tuple(elts=[Name(id='str', ctx=Load()), Name(id='Any', ctx=Load())], ctx=Load()), ctx=Load())",
      "tags": [
        "_check_command_safety"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:execute_command",
      "type": "function",
      "name": "execute_command",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "execute_command(request) 异步函数",
      "tags": [
        "execute_command"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:list_sessions",
      "type": "function",
      "name": "list_sessions",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "list_sessions() 异步函数",
      "tags": [
        "list_sessions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:get_session_history",
      "type": "function",
      "name": "get_session_history",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "get_session_history(session_id, limit, offset) 异步函数",
      "tags": [
        "get_session_history"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:close_session",
      "type": "function",
      "name": "close_session",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "close_session(session_id) 异步函数",
      "tags": [
        "close_session"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:terminal_websocket",
      "type": "function",
      "name": "terminal_websocket",
      "filePath": "src/agentkit/server/routes/terminal.py",
      "layer": "api",
      "summary": "terminal_websocket(websocket) 异步函数 → None",
      "tags": [
        "terminal_websocket"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_verify_api_key",
      "type": "function",
      "name": "_verify_api_key",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "_verify_api_key(request, api_key_header, api_key_query) 异步函数 → None",
      "tags": [
        "_verify_api_key"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_ws_subscribe",
      "type": "function",
      "name": "_ws_subscribe",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "_ws_subscribe(execution_id, ws) 异步函数 → None",
      "tags": [
        "_ws_subscribe"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_ws_unsubscribe",
      "type": "function",
      "name": "_ws_unsubscribe",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "_ws_unsubscribe(execution_id, ws) 异步函数 → None",
      "tags": [
        "_ws_unsubscribe"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_get_store",
      "type": "function",
      "name": "_get_store",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "_get_store(request) 函数 → WorkflowStore",
      "tags": [
        "_get_store"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_validate_workflow_stages",
      "type": "function",
      "name": "_validate_workflow_stages",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "_validate_workflow_stages(stages) 函数 → None",
      "tags": [
        "_validate_workflow_stages"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_execute_workflow",
      "type": "function",
      "name": "_execute_workflow",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "_execute_workflow(workflow, execution, variables, store, skill_registry) 异步函数 → None",
      "tags": [
        "_execute_workflow"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_evaluate_condition",
      "type": "function",
      "name": "_evaluate_condition",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "_evaluate_condition(expression, variables) 函数 → bool",
      "tags": [
        "_evaluate_condition"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_broadcast_ws",
      "type": "function",
      "name": "_broadcast_ws",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "_broadcast_ws(message, execution_id) 异步函数 → None",
      "tags": [
        "_broadcast_ws"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:list_workflows",
      "type": "function",
      "name": "list_workflows",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "list_workflows(request, limit, _auth) 异步函数",
      "tags": [
        "list_workflows"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:create_workflow",
      "type": "function",
      "name": "create_workflow",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "create_workflow(request, body, _auth) 异步函数",
      "tags": [
        "create_workflow"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:get_workflow",
      "type": "function",
      "name": "get_workflow",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "get_workflow(request, workflow_id, _auth) 异步函数",
      "tags": [
        "get_workflow"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:list_workflow_executions",
      "type": "function",
      "name": "list_workflow_executions",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "list_workflow_executions(request, workflow_id, limit, offset, _auth) 异步函数",
      "tags": [
        "list_workflow_executions"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:update_workflow",
      "type": "function",
      "name": "update_workflow",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "update_workflow(request, workflow_id, body, _auth) 异步函数",
      "tags": [
        "update_workflow"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:delete_workflow",
      "type": "function",
      "name": "delete_workflow",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "delete_workflow(request, workflow_id, _auth) 异步函数",
      "tags": [
        "delete_workflow"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:execute_workflow",
      "type": "function",
      "name": "execute_workflow",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "execute_workflow(request, workflow_id, body, _auth) 异步函数",
      "tags": [
        "execute_workflow"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:get_execution",
      "type": "function",
      "name": "get_execution",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "get_execution(request, execution_id, _auth) 异步函数",
      "tags": [
        "get_execution"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:approve_execution",
      "type": "function",
      "name": "approve_execution",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "approve_execution(request, execution_id, body, _auth) 异步函数",
      "tags": [
        "approve_execution"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:cancel_execution",
      "type": "function",
      "name": "cancel_execution",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "cancel_execution(request, execution_id, _auth) 异步函数",
      "tags": [
        "cancel_execution"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:workflow_websocket",
      "type": "function",
      "name": "workflow_websocket",
      "filePath": "src/agentkit/server/routes/workflows.py",
      "layer": "api",
      "summary": "workflow_websocket(websocket) 异步函数",
      "tags": [
        "workflow_websocket"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_authenticate",
      "type": "function",
      "name": "_authenticate",
      "filePath": "src/agentkit/server/routes/ws.py",
      "layer": "api",
      "summary": "_authenticate(websocket, api_key) 函数 → bool",
      "tags": [
        "_authenticate"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:task_websocket",
      "type": "function",
      "name": "task_websocket",
      "filePath": "src/agentkit/server/routes/ws.py",
      "layer": "api",
      "summary": "task_websocket(websocket, task_id) 异步函数 → None",
      "tags": [
        "task_websocket"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_resolve_agent",
      "type": "function",
      "name": "_resolve_agent",
      "filePath": "src/agentkit/server/routes/ws.py",
      "layer": "api",
      "summary": "_resolve_agent(websocket, _task_id) 函数",
      "tags": [
        "_resolve_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_run_react_and_stream",
      "type": "function",
      "name": "_run_react_and_stream",
      "filePath": "src/agentkit/server/routes/ws.py",
      "layer": "api",
      "summary": "_run_react_and_stream(websocket, task_id, agent, cancellation_token) 异步函数 → None",
      "tags": [
        "_run_react_and_stream"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_listen_client_messages",
      "type": "function",
      "name": "_listen_client_messages",
      "filePath": "src/agentkit/server/routes/ws.py",
      "layer": "api",
      "summary": "_listen_client_messages(websocket, task_id, cancellation_token, _exec_task) 异步函数 → None",
      "tags": [
        "_listen_client_messages"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:create_task_store",
      "type": "function",
      "name": "create_task_store",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "create_task_store(backend, redis_url, ttl_seconds, max_records) 函数 → BinOp(left=Name(id='InMemoryTaskStore', ctx=Load()), op=BitOr(), right=Name(id='RedisTaskStore', ctx=Load()))",
      "tags": [
        "create_task_store"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_sanitize_redis_url",
      "type": "function",
      "name": "_sanitize_redis_url",
      "filePath": "src/agentkit/server/task_store.py",
      "layer": "api",
      "summary": "_sanitize_redis_url(url) 函数 → str",
      "tags": [
        "_sanitize_redis_url"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:create_session_store",
      "type": "function",
      "name": "create_session_store",
      "filePath": "src/agentkit/session/store.py",
      "layer": "data",
      "summary": "create_session_store(backend, redis_url, ttl_seconds, data_dir) 函数 → BinOp(left=BinOp(left=Name(id='InMemorySessionStore', ctx=Load()), op=BitOr(), right=Name(id='RedisSessionStore', ctx=Load())), op=BitOr(), right=Name(id='FileSessionStore', ctx=Load()))",
      "tags": [
        "create_session_store"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:create_geo_pipeline_steps",
      "type": "function",
      "name": "create_geo_pipeline_steps",
      "filePath": "src/agentkit/skills/geo_pipeline.py",
      "layer": "service",
      "summary": "create_geo_pipeline_steps() 函数 → Subscript(value=Name(id='list', ctx=Load()), slice=Name(id='PipelineStep', ctx=Load()), ctx=Load())",
      "tags": [
        "create_geo_pipeline_steps"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:get_meter",
      "type": "function",
      "name": "get_meter",
      "filePath": "src/agentkit/telemetry/metrics.py",
      "layer": "utility",
      "summary": "get_meter(name) 函数",
      "tags": [
        "get_meter"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_get_counter",
      "type": "function",
      "name": "_get_counter",
      "filePath": "src/agentkit/telemetry/metrics.py",
      "layer": "utility",
      "summary": "_get_counter(name, description, unit) 函数",
      "tags": [
        "_get_counter"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_get_histogram",
      "type": "function",
      "name": "_get_histogram",
      "filePath": "src/agentkit/telemetry/metrics.py",
      "layer": "utility",
      "summary": "_get_histogram(name, description, unit) 函数",
      "tags": [
        "_get_histogram"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:agent_request_counter",
      "type": "function",
      "name": "agent_request_counter",
      "filePath": "src/agentkit/telemetry/metrics.py",
      "layer": "utility",
      "summary": "agent_request_counter() 函数",
      "tags": [
        "agent_request_counter"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:agent_duration_histogram",
      "type": "function",
      "name": "agent_duration_histogram",
      "filePath": "src/agentkit/telemetry/metrics.py",
      "layer": "utility",
      "summary": "agent_duration_histogram() 函数",
      "tags": [
        "agent_duration_histogram"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:llm_token_histogram",
      "type": "function",
      "name": "llm_token_histogram",
      "filePath": "src/agentkit/telemetry/metrics.py",
      "layer": "utility",
      "summary": "llm_token_histogram() 函数",
      "tags": [
        "llm_token_histogram"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:tool_duration_histogram",
      "type": "function",
      "name": "tool_duration_histogram",
      "filePath": "src/agentkit/telemetry/metrics.py",
      "layer": "utility",
      "summary": "tool_duration_histogram() 函数",
      "tags": [
        "tool_duration_histogram"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:pipeline_step_histogram",
      "type": "function",
      "name": "pipeline_step_histogram",
      "filePath": "src/agentkit/telemetry/metrics.py",
      "layer": "utility",
      "summary": "pipeline_step_histogram() 函数",
      "tags": [
        "pipeline_step_histogram"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:setup_telemetry",
      "type": "function",
      "name": "setup_telemetry",
      "filePath": "src/agentkit/telemetry/setup.py",
      "layer": "utility",
      "summary": "setup_telemetry(app, config) 函数",
      "tags": [
        "setup_telemetry"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:get_tracer",
      "type": "function",
      "name": "get_tracer",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "get_tracer() 函数 → BinOp(left=Name(id='NoOpTracer', ctx=Load()), op=BitOr(), right=Name(id='OTelTracer', ctx=Load()))",
      "tags": [
        "get_tracer"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:init_telemetry",
      "type": "function",
      "name": "init_telemetry",
      "filePath": "src/agentkit/telemetry/tracer.py",
      "layer": "utility",
      "summary": "init_telemetry(config) 函数 → None",
      "tags": [
        "init_telemetry"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:get_tracer",
      "type": "function",
      "name": "get_tracer",
      "filePath": "src/agentkit/telemetry/tracing.py",
      "layer": "utility",
      "summary": "get_tracer(name) 函数",
      "tags": [
        "get_tracer"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:start_span",
      "type": "function",
      "name": "start_span",
      "filePath": "src/agentkit/telemetry/tracing.py",
      "layer": "utility",
      "summary": "start_span(name, kind, attributes) 函数",
      "tags": [
        "start_span"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:trace_agent",
      "type": "function",
      "name": "trace_agent",
      "filePath": "src/agentkit/telemetry/tracing.py",
      "layer": "utility",
      "summary": "trace_agent(agent_name, agent_type) 函数",
      "tags": [
        "trace_agent"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:trace_tool",
      "type": "function",
      "name": "trace_tool",
      "filePath": "src/agentkit/telemetry/tracing.py",
      "layer": "utility",
      "summary": "trace_tool(tool_name) 函数",
      "tags": [
        "trace_tool"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:trace_llm",
      "type": "function",
      "name": "trace_llm",
      "filePath": "src/agentkit/telemetry/tracing.py",
      "layer": "utility",
      "summary": "trace_llm(provider, model) 函数",
      "tags": [
        "trace_llm"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:trace_pipeline_step",
      "type": "function",
      "name": "trace_pipeline_step",
      "filePath": "src/agentkit/telemetry/tracing.py",
      "layer": "utility",
      "summary": "trace_pipeline_step(pipeline_name, step_name) 函数",
      "tags": [
        "trace_pipeline_step"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:is_safe_url",
      "type": "function",
      "name": "is_safe_url",
      "filePath": "src/agentkit/utils/security.py",
      "layer": "unknown",
      "summary": "is_safe_url(url) 函数 → bool",
      "tags": [
        "is_safe_url"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_is_unsafe_ip",
      "type": "function",
      "name": "_is_unsafe_ip",
      "filePath": "src/agentkit/utils/security.py",
      "layer": "unknown",
      "summary": "_is_unsafe_ip(ip) 函数 → bool",
      "tags": [
        "_is_unsafe_ip"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:is_safe_url_async",
      "type": "function",
      "name": "is_safe_url_async",
      "filePath": "src/agentkit/utils/security.py",
      "layer": "unknown",
      "summary": "is_safe_url_async(url) 异步函数 → bool",
      "tags": [
        "is_safe_url_async"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:compute_cosine_similarity",
      "type": "function",
      "name": "compute_cosine_similarity",
      "filePath": "src/agentkit/utils/vector_math.py",
      "layer": "unknown",
      "summary": "compute_cosine_similarity(vec_a, vec_b) 函数 → float",
      "tags": [
        "compute_cosine_similarity"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/core/plan_exec_engine.py",
      "type": "file",
      "name": "plan_exec_engine.py",
      "summary": "Plan-and-Execute 执行引擎适配器，组合 GoalPlanner + PlanExecutor + PipelineReplanner，兼容 ReActEngine 接口，支持三阶段流程（规划→执行→重规划）",
      "tags": [
        "core",
        "engine",
        "plan-exec",
        "autonomous"
      ],
      "filePath": "src/agentkit/core/plan_exec_engine.py"
    },
    {
      "id": "class:src/agentkit/core/plan_exec_engine.py:PlanExecEngine",
      "type": "class",
      "name": "PlanExecEngine",
      "summary": "Plan-and-Execute 执行引擎主类，支持 SharedWorkspace 状态传递和 step_event_callback 进度推送",
      "tags": [
        "core",
        "engine",
        "plan-exec"
      ],
      "filePath": "src/agentkit/core/plan_exec_engine.py"
    },
    {
      "id": "class:src/agentkit/core/plan_exec_engine.py:ReActStepExecutor",
      "type": "class",
      "name": "ReActStepExecutor",
      "summary": "ReAct 循环步骤执行器，使用 ReActEngine 执行每个 PlanStep，支持工具调用和 confirmation_handler",
      "tags": [
        "core",
        "executor",
        "react"
      ],
      "filePath": "src/agentkit/core/plan_exec_engine.py"
    },
    {
      "id": "class:src/agentkit/core/plan_exec_engine.py:_ReActStepAgent",
      "type": "class",
      "name": "_ReActStepAgent",
      "summary": "ReAct 循环步骤 Agent，将 PlanStep 描述交给 ReActEngine 执行",
      "tags": [
        "core",
        "agent",
        "react"
      ],
      "filePath": "src/agentkit/core/plan_exec_engine.py"
    },
    {
      "id": "file:src/agentkit/core/goal_planner.py",
      "type": "file",
      "name": "goal_planner.py",
      "summary": "目标分析与计划生成器，将自然语言目标分解为结构化 ExecutionPlan，支持规则分解、动词模式匹配、LLM 细化和能力缺口识别",
      "tags": [
        "core",
        "planner",
        "decomposition"
      ],
      "filePath": "src/agentkit/core/goal_planner.py"
    },
    {
      "id": "class:src/agentkit/core/goal_planner.py:GoalPlanner",
      "type": "class",
      "name": "GoalPlanner",
      "summary": "目标分析与计划生成器主类，支持规则分解（并列/顺序/动词模式）、LLM 细化、能力缺口识别",
      "tags": [
        "core",
        "planner"
      ],
      "filePath": "src/agentkit/core/goal_planner.py"
    },
    {
      "id": "file:src/agentkit/experts/orchestrator.py",
      "type": "file",
      "name": "orchestrator.py",
      "summary": "专家团队协作计划执行引擎，支持串行/子任务并行/竞争并行、LLM 合并策略（BEST/VOTE/FUSION）、里程碑检查、重试+重规划+回退",
      "tags": [
        "experts",
        "orchestrator",
        "team"
      ],
      "filePath": "src/agentkit/experts/orchestrator.py"
    },
    {
      "id": "class:src/agentkit/experts/orchestrator.py:TeamOrchestrator",
      "type": "class",
      "name": "TeamOrchestrator",
      "summary": "团队编排引擎，执行 CollaborationPlan，支持串行/并行/竞争阶段、LLM 合并策略、重试→重规划→回退",
      "tags": [
        "experts",
        "orchestrator"
      ],
      "filePath": "src/agentkit/experts/orchestrator.py"
    },
    {
      "id": "file:src/agentkit/experts/team.py",
      "type": "file",
      "name": "team.py",
      "summary": "专家团队容器，管理 Expert 生命周期、共享上下文、协作计划和团队状态，暴露 workspace/handoff_transport/get_expert/set_status 公共 API",
      "tags": [
        "experts",
        "team",
        "container"
      ],
      "filePath": "src/agentkit/experts/team.py"
    },
    {
      "id": "class:src/agentkit/experts/team.py:ExpertTeam",
      "type": "class",
      "name": "ExpertTeam",
      "summary": "专家团队容器主类，暴露 workspace/handoff_transport/team_channel/get_expert/set_status 公共 API",
      "tags": [
        "experts",
        "team"
      ],
      "filePath": "src/agentkit/experts/team.py"
    },
    {
      "id": "class:src/agentkit/experts/team.py:TeamStatus",
      "type": "class",
      "name": "TeamStatus",
      "summary": "专家团队生命周期状态枚举：FORMING→PLANNING→EXECUTING→SYNTHESIZING→COMPLETED→DISSOLVED",
      "tags": [
        "experts",
        "enum"
      ],
      "filePath": "src/agentkit/experts/team.py"
    },
    {
      "id": "file:src/agentkit/experts/router.py",
      "type": "file",
      "name": "router.py",
      "summary": "专家团队路由器，解析 @team 前缀和复杂度阈值，将用户输入路由到 ExpertTeam 模式",
      "tags": [
        "experts",
        "router"
      ],
      "filePath": "src/agentkit/experts/router.py"
    },
    {
      "id": "class:src/agentkit/experts/router.py:ExpertTeamRouter",
      "type": "class",
      "name": "ExpertTeamRouter",
      "summary": "专家团队路由器，支持 @team 前缀触发、指定成员、高复杂度自动建议团队模式",
      "tags": [
        "experts",
        "router"
      ],
      "filePath": "src/agentkit/experts/router.py"
    },
    {
      "id": "file:src/agentkit/experts/config.py",
      "type": "file",
      "name": "config.py",
      "summary": "Expert 配置与模板定义，ExpertConfig 扩展 AgentConfig 新增 persona/thinking_style/bound_skills 等角色属性",
      "tags": [
        "experts",
        "config"
      ],
      "filePath": "src/agentkit/experts/config.py"
    },
    {
      "id": "class:src/agentkit/experts/config.py:ExpertConfig",
      "type": "class",
      "name": "ExpertConfig",
      "summary": "专家配置类，扩展 AgentConfig 新增 persona/thinking_style/collaboration_strategy/bound_skills/avatar/color/is_lead",
      "tags": [
        "experts",
        "config"
      ],
      "filePath": "src/agentkit/experts/config.py"
    },
    {
      "id": "class:src/agentkit/experts/config.py:ExpertTemplate",
      "type": "class",
      "name": "ExpertTemplate",
      "summary": "专家模板，可复用的 Expert 配置模板",
      "tags": [
        "experts",
        "template"
      ],
      "filePath": "src/agentkit/experts/config.py"
    },
    {
      "id": "file:src/agentkit/experts/expert.py",
      "type": "file",
      "name": "expert.py",
      "summary": "专家运行时包装器，持有 ExpertConfig 和 ConfigDrivenAgent，添加团队感知行为",
      "tags": [
        "experts",
        "expert",
        "runtime"
      ],
      "filePath": "src/agentkit/experts/expert.py"
    },
    {
      "id": "class:src/agentkit/experts/expert.py:Expert",
      "type": "class",
      "name": "Expert",
      "summary": "专家运行时包装器，支持团队频道消息广播、跨 Expert 协助请求、计划修改提案",
      "tags": [
        "experts",
        "expert"
      ],
      "filePath": "src/agentkit/experts/expert.py"
    },
    {
      "id": "file:src/agentkit/experts/plan.py",
      "type": "file",
      "name": "plan.py",
      "summary": "协作计划数据模型，定义 Expert Team 的结构化协作蓝图，包括阶段、角色分配、依赖关系、并行类型、合并策略和里程碑",
      "tags": [
        "experts",
        "plan",
        "model"
      ],
      "filePath": "src/agentkit/experts/plan.py"
    },
    {
      "id": "class:src/agentkit/experts/plan.py:CollaborationPlan",
      "type": "class",
      "name": "CollaborationPlan",
      "summary": "协作计划主类，包含有序阶段列表、共享变量、状态管理、依赖关系验证（DFS循环检测）",
      "tags": [
        "experts",
        "plan"
      ],
      "filePath": "src/agentkit/experts/plan.py"
    },
    {
      "id": "class:src/agentkit/experts/plan.py:PlanPhase",
      "type": "class",
      "name": "PlanPhase",
      "summary": "协作计划阶段，包含 assigned_expert/task_description/depends_on/parallel_type/merge_strategy/milestone",
      "tags": [
        "experts",
        "plan",
        "phase"
      ],
      "filePath": "src/agentkit/experts/plan.py"
    },
    {
      "id": "class:src/agentkit/experts/plan.py:MergeStrategy",
      "type": "class",
      "name": "MergeStrategy",
      "summary": "合并策略枚举：BEST/VOTE/FUSION",
      "tags": [
        "experts",
        "enum",
        "merge"
      ],
      "filePath": "src/agentkit/experts/plan.py"
    },
    {
      "id": "class:src/agentkit/experts/plan.py:ParallelType",
      "type": "class",
      "name": "ParallelType",
      "summary": "并行执行类型枚举：SERIAL/SUBTASK_PARALLEL/COMPETITIVE_PARALLEL",
      "tags": [
        "experts",
        "enum"
      ],
      "filePath": "src/agentkit/experts/plan.py"
    },
    {
      "id": "file:src/agentkit/experts/registry.py",
      "type": "file",
      "name": "registry.py",
      "summary": "专家模板注册中心，管理 ExpertTemplate 的注册、发现、搜索和批量加载",
      "tags": [
        "experts",
        "registry"
      ],
      "filePath": "src/agentkit/experts/registry.py"
    },
    {
      "id": "class:src/agentkit/experts/registry.py:ExpertTemplateRegistry",
      "type": "class",
      "name": "ExpertTemplateRegistry",
      "summary": "专家模板注册中心，支持注册/获取/搜索模板",
      "tags": [
        "experts",
        "registry"
      ],
      "filePath": "src/agentkit/experts/registry.py"
    },
    {
      "id": "file:src/agentkit/chat/skill_routing.py",
      "type": "file",
      "name": "skill_routing.py",
      "summary": "共享技能路由逻辑，包含三层成本感知路由器 CostAwareRouter、启发式分类器 HeuristicClassifier",
      "tags": [
        "chat",
        "routing",
        "skill"
      ],
      "filePath": "src/agentkit/chat/skill_routing.py"
    },
    {
      "id": "class:src/agentkit/chat/skill_routing.py:CostAwareRouter",
      "type": "class",
      "name": "CostAwareRouter",
      "summary": "三层成本感知路由器：Layer0 规则匹配→Layer1 复杂度分类→Layer2 能力匹配/团队升级",
      "tags": [
        "chat",
        "router",
        "cost-aware"
      ],
      "filePath": "src/agentkit/chat/skill_routing.py"
    },
    {
      "id": "file:src/agentkit/server/routes/chat.py",
      "type": "file",
      "name": "chat.py",
      "summary": "Chat API 路由，提供 REST 和 WebSocket 端点，支持专家团队事件推送",
      "tags": [
        "server",
        "route",
        "chat",
        "websocket"
      ],
      "filePath": "src/agentkit/server/routes/chat.py"
    },
    {
      "id": "file:src/agentkit/server/app.py",
      "type": "file",
      "name": "app.py",
      "summary": "FastAPI 应用工厂：初始化全部组件，create_app 自动加载 .env + ServerConfig.from_yaml，支持配置热重载",
      "tags": [
        "server",
        "app",
        "factory",
        "dotenv"
      ],
      "filePath": "src/agentkit/server/app.py"
    },
    {
      "id": "file:src/agentkit/server/config.py",
      "type": "file",
      "name": "config.py",
      "summary": "服务器配置加载器：统一配置加载链 find_config_path() → load_config_with_dotenv() → load_dotenv() + ServerConfig.from_yaml()，含 .env 白名单安全加载、${VAR} 环境变量解析、配置热重载",
      "tags": [
        "server",
        "config",
        "dotenv"
      ],
      "filePath": "src/agentkit/server/config.py"
    },
    {
      "id": "class:src/agentkit/server/config.py:ServerConfig",
      "type": "class",
      "name": "ServerConfig",
      "summary": "服务器配置主类，支持 from_yaml 加载、has_llm_provider() 检测有效 LLM 配置、watch_config 热重载",
      "tags": [
        "server",
        "config"
      ],
      "filePath": "src/agentkit/server/config.py"
    },
    {
      "id": "file:src/agentkit/server/middleware.py",
      "type": "file",
      "name": "middleware.py",
      "summary": "服务器中间件，包含 API Key 认证和速率限制",
      "tags": [
        "server",
        "middleware",
        "auth"
      ],
      "filePath": "src/agentkit/server/middleware.py"
    },
    {
      "id": "file:src/agentkit/server/frontend/src/stores/chat.ts",
      "type": "file",
      "name": "chat.ts",
      "summary": "Pinia 聊天状态管理，管理对话列表、WebSocket 连接、专家团队事件",
      "tags": [
        "frontend",
        "store",
        "chat",
        "pinia"
      ],
      "filePath": "src/agentkit/server/frontend/src/stores/chat.ts"
    },
    {
      "id": "file:src/agentkit/server/frontend/src/stores/team.ts",
      "type": "file",
      "name": "team.ts",
      "summary": "Pinia 专家团队状态管理",
      "tags": [
        "frontend",
        "store",
        "team",
        "pinia"
      ],
      "filePath": "src/agentkit/server/frontend/src/stores/team.ts"
    },
    {
      "id": "file:src/agentkit/server/frontend/src/components/chat/ExpertTeamView.vue",
      "type": "file",
      "name": "ExpertTeamView.vue",
      "summary": "专家团队视图组件，展示活跃专家列表、阶段完成进度条",
      "tags": [
        "frontend",
        "component",
        "team",
        "vue"
      ],
      "filePath": "src/agentkit/server/frontend/src/components/chat/ExpertTeamView.vue"
    },
    {
      "id": "file:src/agentkit/server/frontend/src/components/chat/PlanVisualization.vue",
      "type": "file",
      "name": "PlanVisualization.vue",
      "summary": "协作计划时间线可视化组件",
      "tags": [
        "frontend",
        "component",
        "plan",
        "visualization",
        "vue"
      ],
      "filePath": "src/agentkit/server/frontend/src/components/chat/PlanVisualization.vue"
    },
    {
      "id": "file:src/agentkit/server/frontend/src/views/ChatView.vue",
      "type": "file",
      "name": "ChatView.vue",
      "summary": "聊天主视图",
      "tags": [
        "frontend",
        "view",
        "chat",
        "vue"
      ],
      "filePath": "src/agentkit/server/frontend/src/views/ChatView.vue"
    },
    {
      "id": "file:tests/unit/experts/test_team_orchestrator.py",
      "type": "file",
      "name": "test_team_orchestrator.py",
      "summary": "TeamOrchestrator 单元测试，覆盖串行/并行/竞争/合并策略/里程碑/重试/重规划/回退",
      "tags": [
        "test",
        "unit",
        "orchestrator"
      ],
      "filePath": "tests/unit/experts/test_team_orchestrator.py"
    },
    {
      "id": "file:tests/unit/core/test_autonomous_research_task.py",
      "type": "file",
      "name": "test_autonomous_research_task.py",
      "summary": "多步研究任务端到端验证",
      "tags": [
        "test",
        "unit",
        "plan-exec",
        "e2e"
      ],
      "filePath": "tests/unit/core/test_autonomous_research_task.py"
    },
    {
      "id": "file:tests/unit/experts/test_team.py",
      "type": "file",
      "name": "test_team.py",
      "summary": "ExpertTeam 容器单元测试",
      "tags": [
        "test",
        "unit",
        "team"
      ],
      "filePath": "tests/unit/experts/test_team.py"
    },
    {
      "id": "func:_resolve_env_vars",
      "type": "function",
      "name": "_resolve_env_vars",
      "filePath": "src/agentkit/server/config.py",
      "layer": "service",
      "summary": "解析字符串中的 ${VAR} 和 ${VAR:-default} 环境变量引用",
      "tags": [
        "config",
        "env-vars"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_deep_resolve",
      "type": "function",
      "name": "_deep_resolve",
      "filePath": "src/agentkit/server/config.py",
      "layer": "service",
      "summary": "递归解析嵌套 dict/list 中的 ${VAR} 环境变量引用",
      "tags": [
        "config",
        "env-vars"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:load_dotenv",
      "type": "function",
      "name": "load_dotenv",
      "filePath": "src/agentkit/server/config.py",
      "layer": "service",
      "summary": "从 .env 文件加载环境变量，支持白名单前缀/精确名称过滤，不覆盖已存在的环境变量",
      "tags": [
        "config",
        "dotenv",
        "security"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:load_config_with_dotenv",
      "type": "function",
      "name": "load_config_with_dotenv",
      "filePath": "src/agentkit/server/config.py",
      "layer": "service",
      "summary": "生产级配置加载入口：先 load_dotenv() 再 ServerConfig.from_yaml()，所有 CLI 和 app factory 的统一加载链",
      "tags": [
        "config",
        "dotenv"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:find_config_path",
      "type": "function",
      "name": "find_config_path",
      "filePath": "src/agentkit/server/config.py",
      "layer": "service",
      "summary": "查找 agentkit.yaml 配置文件路径：--config 参数 > ./agentkit.yaml > ~/.agentkit/agentkit.yaml",
      "tags": [
        "config"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:has_llm_provider",
      "type": "function",
      "name": "has_llm_provider",
      "filePath": "src/agentkit/server/config.py",
      "layer": "service",
      "summary": "ServerConfig 方法：检查是否配置了有效的 LLM Provider（API Key 已解析且非 ${VAR} 占位符）",
      "tags": [
        "config",
        "llm"
      ],
      "complexity": "simple"
    },
    {
      "id": "func:_reverse_resolve_env",
      "type": "function",
      "name": "_reverse_resolve_env",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "反向解析环境变量引用：若原始 YAML 含 ${VAR} 且当前值匹配 os.environ[VAR]，保留 ${VAR} 引用而非写入明文",
      "tags": [
        "settings",
        "env-vars",
        "security"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_write_env_var",
      "type": "function",
      "name": "_write_env_var",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "将 API Key 写入 .env 文件（配置文件同级目录），更新已有行或追加新行，同时设置 os.environ",
      "tags": [
        "settings",
        "dotenv",
        "security"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_deep_update_ruamel",
      "type": "function",
      "name": "_deep_update_ruamel",
      "filePath": "src/agentkit/server/routes/settings.py",
      "layer": "api",
      "summary": "深度更新 ruamel.yaml CommentedMap，保留 YAML 注释和格式",
      "tags": [
        "settings",
        "yaml"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:tests/unit/server/test_settings_routes.py",
      "type": "file",
      "name": "test_settings_routes.py",
      "filePath": "tests/unit/server/test_settings_routes.py",
      "layer": "test",
      "summary": "Settings API 路由单元测试：覆盖 LLM/Skills/KB/General 配置 CRUD、${VAR} 反向解析保留、_write_env_var .env 写入",
      "tags": [
        "test",
        "settings",
        "server"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:tests/unit/test_cli.py",
      "type": "file",
      "name": "test_cli.py",
      "filePath": "tests/unit/test_cli.py",
      "layer": "test",
      "summary": "CLI 命令单元测试：version/doctor/init 命令、onboarding 配置加载链",
      "tags": [
        "test",
        "cli"
      ],
      "complexity": "moderate"
    },
    {
      "id": "file:src/agentkit/cli/benchmark.py",
      "type": "file",
      "name": "benchmark.py",
      "filePath": "src/agentkit/cli/benchmark.py",
      "layer": "api",
      "summary": "Benchmark CLI - 标准化能力基准测试，支持 Mock/LLM/GUI 三种模式，输出 Accuracy/Precision/Recall/F1/Latency 指标",
      "tags": [
        "benchmark",
        "cli",
        "testing"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:benchmark",
      "type": "function",
      "name": "benchmark",
      "filePath": "src/agentkit/cli/benchmark.py",
      "layer": "api",
      "summary": "benchmark(dimension, mode, report, runs, fast, verbose) CLI 主命令 - 支持流式关键词检测、难度分级超时、WebSocket 协议修正、延迟统计排除 timeout 用例",
      "tags": [
        "benchmark",
        "cli",
        "main"
      ],
      "complexity": "complex"
    },
    {
      "id": "func:_execute_llm_reasoning_task",
      "type": "function",
      "name": "_execute_llm_reasoning_task",
      "filePath": "src/agentkit/cli/benchmark.py",
      "layer": "api",
      "summary": "LLM 推理任务执行 - 使用流式响应 + 关键词提前退出 + 难度分级超时 (easy=20s, medium=40s, hard=60s)",
      "tags": [
        "benchmark",
        "llm",
        "streaming"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_run_gui_integration",
      "type": "function",
      "name": "_run_gui_integration",
      "filePath": "src/agentkit/cli/benchmark.py",
      "layer": "api",
      "summary": "GUI 集成测试 - 直接 WebSocket 连接测试，connected 消息作为通过标准",
      "tags": [
        "benchmark",
        "gui",
        "websocket"
      ],
      "complexity": "moderate"
    },
    {
      "id": "func:_compute_metrics",
      "type": "function",
      "name": "_compute_metrics",
      "filePath": "src/agentkit/cli/benchmark.py",
      "layer": "api",
      "summary": "计算聚合指标 - 支持 exclude_latency_tags 参数排除特定用例的延迟统计",
      "tags": [
        "benchmark",
        "metrics"
      ],
      "complexity": "moderate"
    },
    {
      "id": "document:docs/plans/2026-06-17-001-fix-benchmark-failures-root-cause-plan.md",
      "type": "document",
      "name": "2026-06-17-001-fix-benchmark-failures-root-cause-plan.md",
      "filePath": "docs/plans/2026-06-17-001-fix-benchmark-failures-root-cause-plan.md",
      "layer": "document",
      "summary": "Benchmark 测试失败根因修复计划 - 修复 3 个失败项：LLM 超时（流式+分级超时）、WebSocket（端点+协议修正）、延迟统计（排除 timeout 用例）",
      "tags": [
        "plan",
        "benchmark",
        "fix"
      ],
      "complexity": "moderate"
    }
  ],
  "edges": [
    {
      "id": "edge:8ee4f985",
      "source": "file:src/agentkit/bus/interface.py",
      "target": "class:MessageBus",
      "type": "contains",
      "label": "定义类 MessageBus"
    },
    {
      "id": "edge:fdba7527",
      "source": "class:MessageBus",
      "target": "func:MessageBus.publish",
      "type": "contains",
      "label": "方法 publish"
    },
    {
      "id": "edge:c8e54364",
      "source": "class:MessageBus",
      "target": "func:MessageBus.subscribe",
      "type": "contains",
      "label": "方法 subscribe"
    },
    {
      "id": "edge:de510dbd",
      "source": "class:MessageBus",
      "target": "func:MessageBus.unsubscribe",
      "type": "contains",
      "label": "方法 unsubscribe"
    },
    {
      "id": "edge:6a22aafb",
      "source": "class:MessageBus",
      "target": "func:MessageBus.request",
      "type": "contains",
      "label": "方法 request"
    },
    {
      "id": "edge:92a0afd8",
      "source": "file:src/agentkit/bus/memory_bus.py",
      "target": "class:InMemoryMessageBus",
      "type": "contains",
      "label": "定义类 InMemoryMessageBus"
    },
    {
      "id": "edge:b100b408",
      "source": "class:InMemoryMessageBus",
      "target": "func:InMemoryMessageBus.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:abb140d4",
      "source": "class:InMemoryMessageBus",
      "target": "func:InMemoryMessageBus.publish",
      "type": "contains",
      "label": "方法 publish"
    },
    {
      "id": "edge:157eaaa9",
      "source": "class:InMemoryMessageBus",
      "target": "func:InMemoryMessageBus.subscribe",
      "type": "contains",
      "label": "方法 subscribe"
    },
    {
      "id": "edge:c30d987d",
      "source": "class:InMemoryMessageBus",
      "target": "func:InMemoryMessageBus._consume_queue",
      "type": "contains",
      "label": "方法 _consume_queue"
    },
    {
      "id": "edge:700c53a8",
      "source": "class:InMemoryMessageBus",
      "target": "func:InMemoryMessageBus._try_resolve_pending",
      "type": "contains",
      "label": "方法 _try_resolve_pending"
    },
    {
      "id": "edge:9ade7b4f",
      "source": "class:InMemoryMessageBus",
      "target": "func:InMemoryMessageBus.unsubscribe",
      "type": "contains",
      "label": "方法 unsubscribe"
    },
    {
      "id": "edge:8e62b9fe",
      "source": "class:InMemoryMessageBus",
      "target": "func:InMemoryMessageBus.request",
      "type": "contains",
      "label": "方法 request"
    },
    {
      "id": "edge:fbcb1862",
      "source": "class:InMemoryMessageBus",
      "target": "func:InMemoryMessageBus.broadcast",
      "type": "contains",
      "label": "方法 broadcast"
    },
    {
      "id": "edge:0512f3aa",
      "source": "class:InMemoryMessageBus",
      "target": "func:InMemoryMessageBus.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:e60af514",
      "source": "class:InMemoryMessageBus",
      "target": "func:InMemoryMessageBus.backend_type",
      "type": "contains",
      "label": "方法 backend_type"
    },
    {
      "id": "edge:bb133ac2",
      "source": "file:src/agentkit/bus/message.py",
      "target": "class:AgentMessage",
      "type": "contains",
      "label": "定义类 AgentMessage"
    },
    {
      "id": "edge:b44ed6e7",
      "source": "class:AgentMessage",
      "target": "func:AgentMessage.is_expired",
      "type": "contains",
      "label": "方法 is_expired"
    },
    {
      "id": "edge:3c701693",
      "source": "class:AgentMessage",
      "target": "func:AgentMessage.is_broadcast",
      "type": "contains",
      "label": "方法 is_broadcast"
    },
    {
      "id": "edge:cfc16ca4",
      "source": "class:AgentMessage",
      "target": "func:AgentMessage.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:bd55a0bc",
      "source": "class:AgentMessage",
      "target": "func:AgentMessage.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:0f57312a",
      "source": "file:src/agentkit/bus/protocol.py",
      "target": "class:MessageBus",
      "type": "contains",
      "label": "定义类 MessageBus"
    },
    {
      "id": "edge:e56891e5",
      "source": "class:MessageBus",
      "target": "func:MessageBus.publish",
      "type": "contains",
      "label": "方法 publish"
    },
    {
      "id": "edge:54286b5a",
      "source": "class:MessageBus",
      "target": "func:MessageBus.subscribe",
      "type": "contains",
      "label": "方法 subscribe"
    },
    {
      "id": "edge:7c325244",
      "source": "class:MessageBus",
      "target": "func:MessageBus.unsubscribe",
      "type": "contains",
      "label": "方法 unsubscribe"
    },
    {
      "id": "edge:e1d10137",
      "source": "class:MessageBus",
      "target": "func:MessageBus.request",
      "type": "contains",
      "label": "方法 request"
    },
    {
      "id": "edge:d01897bd",
      "source": "class:MessageBus",
      "target": "func:MessageBus.broadcast",
      "type": "contains",
      "label": "方法 broadcast"
    },
    {
      "id": "edge:4a699c05",
      "source": "class:MessageBus",
      "target": "func:MessageBus.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:f8fd8df9",
      "source": "file:src/agentkit/bus/redis_bus.py",
      "target": "class:RedisMessageBus",
      "type": "contains",
      "label": "定义类 RedisMessageBus"
    },
    {
      "id": "edge:32440e90",
      "source": "class:RedisMessageBus",
      "target": "func:RedisMessageBus.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:4d3d7e2a",
      "source": "class:RedisMessageBus",
      "target": "func:RedisMessageBus._get_redis",
      "type": "contains",
      "label": "方法 _get_redis"
    },
    {
      "id": "edge:f9331664",
      "source": "class:RedisMessageBus",
      "target": "func:RedisMessageBus._stream_key",
      "type": "contains",
      "label": "方法 _stream_key"
    },
    {
      "id": "edge:61f43c6c",
      "source": "class:RedisMessageBus",
      "target": "func:RedisMessageBus._dead_letter_key",
      "type": "contains",
      "label": "方法 _dead_letter_key"
    },
    {
      "id": "edge:80193dd0",
      "source": "class:RedisMessageBus",
      "target": "func:RedisMessageBus.publish",
      "type": "contains",
      "label": "方法 publish"
    },
    {
      "id": "edge:97dafae4",
      "source": "class:RedisMessageBus",
      "target": "func:RedisMessageBus.subscribe",
      "type": "contains",
      "label": "方法 subscribe"
    },
    {
      "id": "edge:abba2ca4",
      "source": "class:RedisMessageBus",
      "target": "func:RedisMessageBus._consume_stream",
      "type": "contains",
      "label": "方法 _consume_stream"
    },
    {
      "id": "edge:3d7d068c",
      "source": "class:RedisMessageBus",
      "target": "func:RedisMessageBus._handle_failed_message",
      "type": "contains",
      "label": "方法 _handle_failed_message"
    },
    {
      "id": "edge:f6ea8f5b",
      "source": "class:RedisMessageBus",
      "target": "func:RedisMessageBus.unsubscribe",
      "type": "contains",
      "label": "方法 unsubscribe"
    },
    {
      "id": "edge:645758f9",
      "source": "class:RedisMessageBus",
      "target": "func:RedisMessageBus.request",
      "type": "contains",
      "label": "方法 request"
    },
    {
      "id": "edge:6260f504",
      "source": "class:RedisMessageBus",
      "target": "func:RedisMessageBus.broadcast",
      "type": "contains",
      "label": "方法 broadcast"
    },
    {
      "id": "edge:5f5eeb79",
      "source": "class:RedisMessageBus",
      "target": "func:RedisMessageBus.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:ff66c54b",
      "source": "class:RedisMessageBus",
      "target": "func:RedisMessageBus.backend_type",
      "type": "contains",
      "label": "方法 backend_type"
    },
    {
      "id": "edge:b2049920",
      "source": "file:src/agentkit/chat/semantic_router.py",
      "target": "class:SemanticRouteResult",
      "type": "contains",
      "label": "定义类 SemanticRouteResult"
    },
    {
      "id": "edge:f66be213",
      "source": "file:src/agentkit/chat/semantic_router.py",
      "target": "class:SkillEmbeddingIndex",
      "type": "contains",
      "label": "定义类 SkillEmbeddingIndex"
    },
    {
      "id": "edge:8b25ac4d",
      "source": "class:SkillEmbeddingIndex",
      "target": "func:SkillEmbeddingIndex.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:7affbff4",
      "source": "class:SkillEmbeddingIndex",
      "target": "func:SkillEmbeddingIndex.build",
      "type": "contains",
      "label": "方法 build"
    },
    {
      "id": "edge:be6fa178",
      "source": "class:SkillEmbeddingIndex",
      "target": "func:SkillEmbeddingIndex.update_skill",
      "type": "contains",
      "label": "方法 update_skill"
    },
    {
      "id": "edge:e05fc23e",
      "source": "class:SkillEmbeddingIndex",
      "target": "func:SkillEmbeddingIndex.remove_skill",
      "type": "contains",
      "label": "方法 remove_skill"
    },
    {
      "id": "edge:b3127575",
      "source": "class:SkillEmbeddingIndex",
      "target": "func:SkillEmbeddingIndex.search",
      "type": "contains",
      "label": "方法 search"
    },
    {
      "id": "edge:cb6f96f1",
      "source": "class:SkillEmbeddingIndex",
      "target": "func:SkillEmbeddingIndex._build_source_text",
      "type": "contains",
      "label": "方法 _build_source_text"
    },
    {
      "id": "edge:63894cf1",
      "source": "class:SkillEmbeddingIndex",
      "target": "func:SkillEmbeddingIndex.size",
      "type": "contains",
      "label": "方法 size"
    },
    {
      "id": "edge:f3f7bee8",
      "source": "file:src/agentkit/chat/semantic_router.py",
      "target": "class:SemanticRouter",
      "type": "contains",
      "label": "定义类 SemanticRouter"
    },
    {
      "id": "edge:3cebf779",
      "source": "class:SemanticRouter",
      "target": "func:SemanticRouter.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:f5c66302",
      "source": "class:SemanticRouter",
      "target": "func:SemanticRouter.build_index",
      "type": "contains",
      "label": "方法 build_index"
    },
    {
      "id": "edge:270873f2",
      "source": "class:SemanticRouter",
      "target": "func:SemanticRouter.update_skill",
      "type": "contains",
      "label": "方法 update_skill"
    },
    {
      "id": "edge:cfe8d51f",
      "source": "class:SemanticRouter",
      "target": "func:SemanticRouter.remove_skill",
      "type": "contains",
      "label": "方法 remove_skill"
    },
    {
      "id": "edge:e3dbd610",
      "source": "class:SemanticRouter",
      "target": "func:SemanticRouter.route",
      "type": "contains",
      "label": "方法 route"
    },
    {
      "id": "edge:e9a687a2",
      "source": "file:src/agentkit/core/agent_pool.py",
      "target": "class:AgentPool",
      "type": "contains",
      "label": "定义类 AgentPool"
    },
    {
      "id": "edge:14bf9c7c",
      "source": "class:AgentPool",
      "target": "func:AgentPool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:b40d6bc9",
      "source": "class:AgentPool",
      "target": "func:AgentPool.create_agent",
      "type": "contains",
      "label": "方法 create_agent"
    },
    {
      "id": "edge:f5958d3b",
      "source": "class:AgentPool",
      "target": "func:AgentPool.remove_agent",
      "type": "contains",
      "label": "方法 remove_agent"
    },
    {
      "id": "edge:65c5f841",
      "source": "class:AgentPool",
      "target": "func:AgentPool.get_agent",
      "type": "contains",
      "label": "方法 get_agent"
    },
    {
      "id": "edge:13bcfb9d",
      "source": "class:AgentPool",
      "target": "func:AgentPool.list_agents",
      "type": "contains",
      "label": "方法 list_agents"
    },
    {
      "id": "edge:2a62206d",
      "source": "class:AgentPool",
      "target": "func:AgentPool.create_agent_from_skill",
      "type": "contains",
      "label": "方法 create_agent_from_skill"
    },
    {
      "id": "edge:699f7ce8",
      "source": "file:src/agentkit/core/base.py",
      "target": "class:BaseAgent",
      "type": "contains",
      "label": "定义类 BaseAgent"
    },
    {
      "id": "edge:619e4f3c",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:b58c6c02",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.status",
      "type": "contains",
      "label": "方法 status"
    },
    {
      "id": "edge:482b0284",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.config_version",
      "type": "contains",
      "label": "方法 config_version"
    },
    {
      "id": "edge:cef85095",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.is_distributed",
      "type": "contains",
      "label": "方法 is_distributed"
    },
    {
      "id": "edge:c6432701",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent._acquire_status_lock",
      "type": "contains",
      "label": "方法 _acquire_status_lock"
    },
    {
      "id": "edge:bf665747",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent._release_status_lock",
      "type": "contains",
      "label": "方法 _release_status_lock"
    },
    {
      "id": "edge:c6f3fadb",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.tools",
      "type": "contains",
      "label": "方法 tools"
    },
    {
      "id": "edge:90c6f0b8",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.memory",
      "type": "contains",
      "label": "方法 memory"
    },
    {
      "id": "edge:4c4067d2",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.llm_gateway",
      "type": "contains",
      "label": "方法 llm_gateway"
    },
    {
      "id": "edge:61f65cfb",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.llm_gateway",
      "type": "contains",
      "label": "方法 llm_gateway"
    },
    {
      "id": "edge:b41b6af1",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.skill",
      "type": "contains",
      "label": "方法 skill"
    },
    {
      "id": "edge:b38cfa25",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.skill",
      "type": "contains",
      "label": "方法 skill"
    },
    {
      "id": "edge:fc26ada1",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.quality_gate",
      "type": "contains",
      "label": "方法 quality_gate"
    },
    {
      "id": "edge:5303d536",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.handle_task",
      "type": "contains",
      "label": "方法 handle_task"
    },
    {
      "id": "edge:cbc37ece",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.get_capabilities",
      "type": "contains",
      "label": "方法 get_capabilities"
    },
    {
      "id": "edge:bd6c7cf3",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.on_task_start",
      "type": "contains",
      "label": "方法 on_task_start"
    },
    {
      "id": "edge:4e7293de",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.on_task_complete",
      "type": "contains",
      "label": "方法 on_task_complete"
    },
    {
      "id": "edge:a19ca4a9",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.on_task_failed",
      "type": "contains",
      "label": "方法 on_task_failed"
    },
    {
      "id": "edge:86615689",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.handle_task_with_feedback",
      "type": "contains",
      "label": "方法 handle_task_with_feedback"
    },
    {
      "id": "edge:a61853b5",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent._build_quality_feedback",
      "type": "contains",
      "label": "方法 _build_quality_feedback"
    },
    {
      "id": "edge:4dd3f3a0",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.use_tool",
      "type": "contains",
      "label": "方法 use_tool"
    },
    {
      "id": "edge:0fab1ead",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.use_memory",
      "type": "contains",
      "label": "方法 use_memory"
    },
    {
      "id": "edge:c8cf80f4",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.use_memory_retriever",
      "type": "contains",
      "label": "方法 use_memory_retriever"
    },
    {
      "id": "edge:9018ef99",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.set_registry",
      "type": "contains",
      "label": "方法 set_registry"
    },
    {
      "id": "edge:19678e55",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.set_dispatcher",
      "type": "contains",
      "label": "方法 set_dispatcher"
    },
    {
      "id": "edge:eec3744d",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.start",
      "type": "contains",
      "label": "方法 start"
    },
    {
      "id": "edge:a8066e45",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.stop",
      "type": "contains",
      "label": "方法 stop"
    },
    {
      "id": "edge:38fa7dd1",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:e916cf84",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.cancel_task",
      "type": "contains",
      "label": "方法 cancel_task"
    },
    {
      "id": "edge:86216335",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.handoff",
      "type": "contains",
      "label": "方法 handoff"
    },
    {
      "id": "edge:671f9e4f",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.report_progress",
      "type": "contains",
      "label": "方法 report_progress"
    },
    {
      "id": "edge:b28ae804",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent.heartbeat",
      "type": "contains",
      "label": "方法 heartbeat"
    },
    {
      "id": "edge:76a5754c",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent._heartbeat_loop",
      "type": "contains",
      "label": "方法 _heartbeat_loop"
    },
    {
      "id": "edge:8c795ea5",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent._listen_for_tasks",
      "type": "contains",
      "label": "方法 _listen_for_tasks"
    },
    {
      "id": "edge:0e565c7f",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent._execute_task_with_semaphore",
      "type": "contains",
      "label": "方法 _execute_task_with_semaphore"
    },
    {
      "id": "edge:dc7c1712",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent._execute_task",
      "type": "contains",
      "label": "方法 _execute_task"
    },
    {
      "id": "edge:52687200",
      "source": "class:BaseAgent",
      "target": "func:BaseAgent._validate_input",
      "type": "contains",
      "label": "方法 _validate_input"
    },
    {
      "id": "edge:8c208495",
      "source": "file:src/agentkit/core/compressor.py",
      "target": "class:CompressionStrategy",
      "type": "contains",
      "label": "定义类 CompressionStrategy"
    },
    {
      "id": "edge:8bae4a13",
      "source": "class:CompressionStrategy",
      "target": "func:CompressionStrategy.compress",
      "type": "contains",
      "label": "方法 compress"
    },
    {
      "id": "edge:7ebb01b1",
      "source": "class:CompressionStrategy",
      "target": "func:CompressionStrategy.compress_tool_result",
      "type": "contains",
      "label": "方法 compress_tool_result"
    },
    {
      "id": "edge:dc195356",
      "source": "class:CompressionStrategy",
      "target": "func:CompressionStrategy.is_available",
      "type": "contains",
      "label": "方法 is_available"
    },
    {
      "id": "edge:4abfcdf7",
      "source": "file:src/agentkit/core/compressor.py",
      "target": "class:ContextCompressor",
      "type": "contains",
      "label": "定义类 ContextCompressor"
    },
    {
      "id": "edge:2fb7be7c",
      "source": "class:ContextCompressor",
      "target": "func:ContextCompressor.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:ef7efb10",
      "source": "class:ContextCompressor",
      "target": "func:ContextCompressor.estimate_tokens",
      "type": "contains",
      "label": "方法 estimate_tokens"
    },
    {
      "id": "edge:8d5f800c",
      "source": "class:ContextCompressor",
      "target": "func:ContextCompressor.compress",
      "type": "contains",
      "label": "方法 compress"
    },
    {
      "id": "edge:fa738deb",
      "source": "class:ContextCompressor",
      "target": "func:ContextCompressor._summarize",
      "type": "contains",
      "label": "方法 _summarize"
    },
    {
      "id": "edge:5571b733",
      "source": "class:ContextCompressor",
      "target": "func:ContextCompressor._simple_summary",
      "type": "contains",
      "label": "方法 _simple_summary"
    },
    {
      "id": "edge:7cfdb7b7",
      "source": "class:ContextCompressor",
      "target": "func:ContextCompressor._compress_aggressive",
      "type": "contains",
      "label": "方法 _compress_aggressive"
    },
    {
      "id": "edge:dd1e7b0b",
      "source": "class:ContextCompressor",
      "target": "func:ContextCompressor._truncate",
      "type": "contains",
      "label": "方法 _truncate"
    },
    {
      "id": "edge:f9f7fb01",
      "source": "class:ContextCompressor",
      "target": "func:ContextCompressor.compress_tool_result",
      "type": "contains",
      "label": "方法 compress_tool_result"
    },
    {
      "id": "edge:2c028a2e",
      "source": "class:ContextCompressor",
      "target": "func:ContextCompressor.is_available",
      "type": "contains",
      "label": "方法 is_available"
    },
    {
      "id": "edge:e4d74bdd",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "class:AgentConfig",
      "type": "contains",
      "label": "定义类 AgentConfig"
    },
    {
      "id": "edge:2712e1ba",
      "source": "class:AgentConfig",
      "target": "func:AgentConfig.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:0f15d71e",
      "source": "class:AgentConfig",
      "target": "func:AgentConfig._validate",
      "type": "contains",
      "label": "方法 _validate"
    },
    {
      "id": "edge:da035016",
      "source": "class:AgentConfig",
      "target": "func:AgentConfig.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:ab891784",
      "source": "class:AgentConfig",
      "target": "func:AgentConfig.from_yaml",
      "type": "contains",
      "label": "方法 from_yaml"
    },
    {
      "id": "edge:9a27c789",
      "source": "class:AgentConfig",
      "target": "func:AgentConfig.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:ed4dae03",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "class:ConfigDrivenAgent",
      "type": "contains",
      "label": "定义类 ConfigDrivenAgent"
    },
    {
      "id": "edge:79e8e1d8",
      "source": "class:ConfigDrivenAgent",
      "target": "class:BaseAgent",
      "type": "extends",
      "label": "继承 BaseAgent"
    },
    {
      "id": "edge:fed9f30f",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:d120f884",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent.get_tools",
      "type": "contains",
      "label": "方法 get_tools"
    },
    {
      "id": "edge:f808bad7",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent.get_model",
      "type": "contains",
      "label": "方法 get_model"
    },
    {
      "id": "edge:fe7d33cb",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent.get_system_prompt",
      "type": "contains",
      "label": "方法 get_system_prompt"
    },
    {
      "id": "edge:774f6ff6",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._build_tools_description",
      "type": "contains",
      "label": "方法 _build_tools_description"
    },
    {
      "id": "edge:5808460a",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent.get_react_config",
      "type": "contains",
      "label": "方法 get_react_config"
    },
    {
      "id": "edge:9f1456e1",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent.config",
      "type": "contains",
      "label": "方法 config"
    },
    {
      "id": "edge:5c4258b0",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent.prompt_template",
      "type": "contains",
      "label": "方法 prompt_template"
    },
    {
      "id": "edge:b726e180",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent.on_task_complete",
      "type": "contains",
      "label": "方法 on_task_complete"
    },
    {
      "id": "edge:bb20d681",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent.on_task_failed",
      "type": "contains",
      "label": "方法 on_task_failed"
    },
    {
      "id": "edge:27a79745",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._bind_tools",
      "type": "contains",
      "label": "方法 _bind_tools"
    },
    {
      "id": "edge:5e7b2514",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._auto_set_current_module",
      "type": "contains",
      "label": "方法 _auto_set_current_module"
    },
    {
      "id": "edge:8309863b",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._register_mcp_tools",
      "type": "contains",
      "label": "方法 _register_mcp_tools"
    },
    {
      "id": "edge:be99ddef",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent.get_capabilities",
      "type": "contains",
      "label": "方法 get_capabilities"
    },
    {
      "id": "edge:76ab119b",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent.handle_task",
      "type": "contains",
      "label": "方法 handle_task"
    },
    {
      "id": "edge:e41f5a30",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._handle_react",
      "type": "contains",
      "label": "方法 _handle_react"
    },
    {
      "id": "edge:b66cc4d2",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._handle_rewoo",
      "type": "contains",
      "label": "方法 _handle_rewoo"
    },
    {
      "id": "edge:c91e80da",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._handle_plan_exec",
      "type": "contains",
      "label": "方法 _handle_plan_exec"
    },
    {
      "id": "edge:d29e267a",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._handle_reflexion",
      "type": "contains",
      "label": "方法 _handle_reflexion"
    },
    {
      "id": "edge:8bcc583f",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._handle_direct",
      "type": "contains",
      "label": "方法 _handle_direct"
    },
    {
      "id": "edge:8739661c",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent.handle_task_with_feedback",
      "type": "contains",
      "label": "方法 handle_task_with_feedback"
    },
    {
      "id": "edge:0cee4700",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._wrap_llm_client",
      "type": "contains",
      "label": "方法 _wrap_llm_client"
    },
    {
      "id": "edge:c1bb1643",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._handle_llm_generate",
      "type": "contains",
      "label": "方法 _handle_llm_generate"
    },
    {
      "id": "edge:426c2676",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._handle_tool_call",
      "type": "contains",
      "label": "方法 _handle_tool_call"
    },
    {
      "id": "edge:b28e4fc9",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._handle_custom",
      "type": "contains",
      "label": "方法 _handle_custom"
    },
    {
      "id": "edge:41c6cb8f",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._resolve_tool",
      "type": "contains",
      "label": "方法 _resolve_tool"
    },
    {
      "id": "edge:8f488dd5",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._call_llm",
      "type": "contains",
      "label": "方法 _call_llm"
    },
    {
      "id": "edge:aad5f222",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._parse_llm_response",
      "type": "contains",
      "label": "方法 _parse_llm_response"
    },
    {
      "id": "edge:83dc2348",
      "source": "class:ConfigDrivenAgent",
      "target": "func:ConfigDrivenAgent._import_handler",
      "type": "contains",
      "label": "方法 _import_handler"
    },
    {
      "id": "edge:58fecc38",
      "source": "file:src/agentkit/core/dispatcher.py",
      "target": "class:TaskDispatcher",
      "type": "contains",
      "label": "定义类 TaskDispatcher"
    },
    {
      "id": "edge:833ce904",
      "source": "class:TaskDispatcher",
      "target": "func:TaskDispatcher.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:13c500d8",
      "source": "class:TaskDispatcher",
      "target": "func:TaskDispatcher._get_redis",
      "type": "contains",
      "label": "方法 _get_redis"
    },
    {
      "id": "edge:aec89097",
      "source": "class:TaskDispatcher",
      "target": "func:TaskDispatcher.dispatch",
      "type": "contains",
      "label": "方法 dispatch"
    },
    {
      "id": "edge:8807214c",
      "source": "class:TaskDispatcher",
      "target": "func:TaskDispatcher.cancel_task",
      "type": "contains",
      "label": "方法 cancel_task"
    },
    {
      "id": "edge:7fd78c6e",
      "source": "class:TaskDispatcher",
      "target": "func:TaskDispatcher.get_task_status",
      "type": "contains",
      "label": "方法 get_task_status"
    },
    {
      "id": "edge:39e8b4dc",
      "source": "class:TaskDispatcher",
      "target": "func:TaskDispatcher.handle_result",
      "type": "contains",
      "label": "方法 handle_result"
    },
    {
      "id": "edge:e6fe8bb9",
      "source": "class:TaskDispatcher",
      "target": "func:TaskDispatcher.handle_progress",
      "type": "contains",
      "label": "方法 handle_progress"
    },
    {
      "id": "edge:7d1ca7c4",
      "source": "class:TaskDispatcher",
      "target": "func:TaskDispatcher.retry_failed_tasks",
      "type": "contains",
      "label": "方法 retry_failed_tasks"
    },
    {
      "id": "edge:847f24cb",
      "source": "class:TaskDispatcher",
      "target": "func:TaskDispatcher._write_log",
      "type": "contains",
      "label": "方法 _write_log"
    },
    {
      "id": "edge:88cf3be6",
      "source": "class:TaskDispatcher",
      "target": "func:TaskDispatcher._trigger_callback",
      "type": "contains",
      "label": "方法 _trigger_callback"
    },
    {
      "id": "edge:5da85061",
      "source": "class:TaskDispatcher",
      "target": "func:TaskDispatcher._task_to_dict",
      "type": "contains",
      "label": "方法 _task_to_dict"
    },
    {
      "id": "edge:d2b6805d",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:AgentFrameworkError",
      "type": "contains",
      "label": "定义类 AgentFrameworkError"
    },
    {
      "id": "edge:856d5500",
      "source": "class:AgentFrameworkError",
      "target": "func:AgentFrameworkError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c866c08d",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:AgentNotFoundError",
      "type": "contains",
      "label": "定义类 AgentNotFoundError"
    },
    {
      "id": "edge:3b5b3f05",
      "source": "class:AgentNotFoundError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:be579b17",
      "source": "class:AgentNotFoundError",
      "target": "func:AgentNotFoundError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:cbf43383",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:AgentAlreadyRegisteredError",
      "type": "contains",
      "label": "定义类 AgentAlreadyRegisteredError"
    },
    {
      "id": "edge:cc9ab182",
      "source": "class:AgentAlreadyRegisteredError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:9285fe66",
      "source": "class:AgentAlreadyRegisteredError",
      "target": "func:AgentAlreadyRegisteredError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:a300a695",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:AgentUnavailableError",
      "type": "contains",
      "label": "定义类 AgentUnavailableError"
    },
    {
      "id": "edge:452cedaf",
      "source": "class:AgentUnavailableError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:06d90153",
      "source": "class:AgentUnavailableError",
      "target": "func:AgentUnavailableError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:192e009e",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:TaskNotFoundError",
      "type": "contains",
      "label": "定义类 TaskNotFoundError"
    },
    {
      "id": "edge:97e2e58c",
      "source": "class:TaskNotFoundError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:5110a3ac",
      "source": "class:TaskNotFoundError",
      "target": "func:TaskNotFoundError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:4746b49a",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:TaskDispatchError",
      "type": "contains",
      "label": "定义类 TaskDispatchError"
    },
    {
      "id": "edge:8e852160",
      "source": "class:TaskDispatchError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:f2b6bca1",
      "source": "class:TaskDispatchError",
      "target": "func:TaskDispatchError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:7f99c112",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:TaskExecutionError",
      "type": "contains",
      "label": "定义类 TaskExecutionError"
    },
    {
      "id": "edge:6d3e5bb0",
      "source": "class:TaskExecutionError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:ed26d6cc",
      "source": "class:TaskExecutionError",
      "target": "func:TaskExecutionError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:10277f7d",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:TaskTimeoutError",
      "type": "contains",
      "label": "定义类 TaskTimeoutError"
    },
    {
      "id": "edge:936095e9",
      "source": "class:TaskTimeoutError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:20c9e639",
      "source": "class:TaskTimeoutError",
      "target": "func:TaskTimeoutError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:05621f1e",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:TaskCancelledError",
      "type": "contains",
      "label": "定义类 TaskCancelledError"
    },
    {
      "id": "edge:6326dfa4",
      "source": "class:TaskCancelledError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:3a9e5927",
      "source": "class:TaskCancelledError",
      "target": "func:TaskCancelledError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:df315165",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:NoAvailableAgentError",
      "type": "contains",
      "label": "定义类 NoAvailableAgentError"
    },
    {
      "id": "edge:6923c287",
      "source": "class:NoAvailableAgentError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:96b2df7c",
      "source": "class:NoAvailableAgentError",
      "target": "func:NoAvailableAgentError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:86c76ca2",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:ConfigValidationError",
      "type": "contains",
      "label": "定义类 ConfigValidationError"
    },
    {
      "id": "edge:adc05273",
      "source": "class:ConfigValidationError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:5a5640a1",
      "source": "class:ConfigValidationError",
      "target": "func:ConfigValidationError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:a0f95e6d",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:AgentNotReadyError",
      "type": "contains",
      "label": "定义类 AgentNotReadyError"
    },
    {
      "id": "edge:eff38ce5",
      "source": "class:AgentNotReadyError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:daba7647",
      "source": "class:AgentNotReadyError",
      "target": "func:AgentNotReadyError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:d140b162",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:SkillNotFoundError",
      "type": "contains",
      "label": "定义类 SkillNotFoundError"
    },
    {
      "id": "edge:11b6d92d",
      "source": "class:SkillNotFoundError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:df706fe4",
      "source": "class:SkillNotFoundError",
      "target": "func:SkillNotFoundError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:754fe802",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:ToolNotFoundError",
      "type": "contains",
      "label": "定义类 ToolNotFoundError"
    },
    {
      "id": "edge:0f515c73",
      "source": "class:ToolNotFoundError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:de8e6810",
      "source": "class:ToolNotFoundError",
      "target": "func:ToolNotFoundError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:97bf1a71",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:ToolExecutionError",
      "type": "contains",
      "label": "定义类 ToolExecutionError"
    },
    {
      "id": "edge:bd42c8eb",
      "source": "class:ToolExecutionError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:c088ae30",
      "source": "class:ToolExecutionError",
      "target": "func:ToolExecutionError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:108cb79c",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:SchemaValidationError",
      "type": "contains",
      "label": "定义类 SchemaValidationError"
    },
    {
      "id": "edge:65d6b4f6",
      "source": "class:SchemaValidationError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:ff1a8351",
      "source": "class:SchemaValidationError",
      "target": "func:SchemaValidationError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c982e81d",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:HandoffError",
      "type": "contains",
      "label": "定义类 HandoffError"
    },
    {
      "id": "edge:098f8595",
      "source": "class:HandoffError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:3e18af1e",
      "source": "class:HandoffError",
      "target": "func:HandoffError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:f3403faa",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:EvolutionError",
      "type": "contains",
      "label": "定义类 EvolutionError"
    },
    {
      "id": "edge:4e6206a6",
      "source": "class:EvolutionError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:fc8d2828",
      "source": "class:EvolutionError",
      "target": "func:EvolutionError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:3eede3c9",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:LLMError",
      "type": "contains",
      "label": "定义类 LLMError"
    },
    {
      "id": "edge:7b86e948",
      "source": "class:LLMError",
      "target": "class:AgentFrameworkError",
      "type": "extends",
      "label": "继承 AgentFrameworkError"
    },
    {
      "id": "edge:fdf9e1d6",
      "source": "class:LLMError",
      "target": "func:LLMError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:bb784a92",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:LLMProviderError",
      "type": "contains",
      "label": "定义类 LLMProviderError"
    },
    {
      "id": "edge:4cda9c33",
      "source": "class:LLMProviderError",
      "target": "class:LLMError",
      "type": "extends",
      "label": "继承 LLMError"
    },
    {
      "id": "edge:70df55c0",
      "source": "class:LLMProviderError",
      "target": "func:LLMProviderError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:b4d7274a",
      "source": "file:src/agentkit/core/exceptions.py",
      "target": "class:ModelNotFoundError",
      "type": "contains",
      "label": "定义类 ModelNotFoundError"
    },
    {
      "id": "edge:c000283d",
      "source": "class:ModelNotFoundError",
      "target": "class:LLMError",
      "type": "extends",
      "label": "继承 LLMError"
    },
    {
      "id": "edge:845ceac4",
      "source": "class:ModelNotFoundError",
      "target": "func:ModelNotFoundError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c9672dd2",
      "source": "file:src/agentkit/core/headroom_compressor.py",
      "target": "class:HeadroomCompressor",
      "type": "contains",
      "label": "定义类 HeadroomCompressor"
    },
    {
      "id": "edge:d1f336fd",
      "source": "class:HeadroomCompressor",
      "target": "func:HeadroomCompressor.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:eba79afa",
      "source": "class:HeadroomCompressor",
      "target": "func:HeadroomCompressor.is_available",
      "type": "contains",
      "label": "方法 is_available"
    },
    {
      "id": "edge:71736c38",
      "source": "class:HeadroomCompressor",
      "target": "func:HeadroomCompressor.compress",
      "type": "contains",
      "label": "方法 compress"
    },
    {
      "id": "edge:8778fdf0",
      "source": "class:HeadroomCompressor",
      "target": "func:HeadroomCompressor.compress_tool_result",
      "type": "contains",
      "label": "方法 compress_tool_result"
    },
    {
      "id": "edge:0800ea0a",
      "source": "class:HeadroomCompressor",
      "target": "func:HeadroomCompressor._detect_content_type",
      "type": "contains",
      "label": "方法 _detect_content_type"
    },
    {
      "id": "edge:caa97041",
      "source": "class:HeadroomCompressor",
      "target": "func:HeadroomCompressor._compress_with_headroom",
      "type": "contains",
      "label": "方法 _compress_with_headroom"
    },
    {
      "id": "edge:e3d06c76",
      "source": "class:HeadroomCompressor",
      "target": "func:HeadroomCompressor._store_ccr",
      "type": "contains",
      "label": "方法 _store_ccr"
    },
    {
      "id": "edge:b9c54d53",
      "source": "class:HeadroomCompressor",
      "target": "func:HeadroomCompressor._evict_expired",
      "type": "contains",
      "label": "方法 _evict_expired"
    },
    {
      "id": "edge:8a35e43d",
      "source": "class:HeadroomCompressor",
      "target": "func:HeadroomCompressor.retrieve",
      "type": "contains",
      "label": "方法 retrieve"
    },
    {
      "id": "edge:e7a37ae0",
      "source": "file:src/agentkit/core/logging.py",
      "target": "class:StructuredFormatter",
      "type": "contains",
      "label": "定义类 StructuredFormatter"
    },
    {
      "id": "edge:4e11b439",
      "source": "class:StructuredFormatter",
      "target": "func:StructuredFormatter.format",
      "type": "contains",
      "label": "方法 format"
    },
    {
      "id": "edge:db22e527",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "class:AgentRole",
      "type": "contains",
      "label": "定义类 AgentRole"
    },
    {
      "id": "edge:744ace02",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "class:SubTaskStatus",
      "type": "contains",
      "label": "定义类 SubTaskStatus"
    },
    {
      "id": "edge:7229bbab",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "class:SubTask",
      "type": "contains",
      "label": "定义类 SubTask"
    },
    {
      "id": "edge:b84828e4",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "class:OrchestrationPlan",
      "type": "contains",
      "label": "定义类 OrchestrationPlan"
    },
    {
      "id": "edge:e27d29b9",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "class:OrchestrationResult",
      "type": "contains",
      "label": "定义类 OrchestrationResult"
    },
    {
      "id": "edge:7586d1bb",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "class:OrchestratorConfig",
      "type": "contains",
      "label": "定义类 OrchestratorConfig"
    },
    {
      "id": "edge:7328867c",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "class:Orchestrator",
      "type": "contains",
      "label": "定义类 Orchestrator"
    },
    {
      "id": "edge:a4f61a5e",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:e0da30df",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:925b507f",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator._decompose_task",
      "type": "contains",
      "label": "方法 _decompose_task"
    },
    {
      "id": "edge:15865a1f",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator._llm_decompose",
      "type": "contains",
      "label": "方法 _llm_decompose"
    },
    {
      "id": "edge:801b3e09",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator._build_parallel_groups",
      "type": "contains",
      "label": "方法 _build_parallel_groups"
    },
    {
      "id": "edge:75a1c07c",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator._execute_plan",
      "type": "contains",
      "label": "方法 _execute_plan"
    },
    {
      "id": "edge:45ddd2d7",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator._execute_subtask",
      "type": "contains",
      "label": "方法 _execute_subtask"
    },
    {
      "id": "edge:8a66abd6",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator._inject_dependency_results",
      "type": "contains",
      "label": "方法 _inject_dependency_results"
    },
    {
      "id": "edge:a95c7bf8",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator._aggregate_results",
      "type": "contains",
      "label": "方法 _aggregate_results"
    },
    {
      "id": "edge:ff347543",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator._get_available_skill_names",
      "type": "contains",
      "label": "方法 _get_available_skill_names"
    },
    {
      "id": "edge:350d4be7",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator._convert_execution_plan_to_subtasks",
      "type": "contains",
      "label": "方法 _convert_execution_plan_to_subtasks"
    },
    {
      "id": "edge:1f5450a5",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator._match_agent_for_skills",
      "type": "contains",
      "label": "方法 _match_agent_for_skills"
    },
    {
      "id": "edge:ea9ff8bb",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator.execute_adaptive",
      "type": "contains",
      "label": "方法 execute_adaptive"
    },
    {
      "id": "edge:415d7315",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator._evaluate_quality",
      "type": "contains",
      "label": "方法 _evaluate_quality"
    },
    {
      "id": "edge:9d177db2",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator._rule_based_evaluate",
      "type": "contains",
      "label": "方法 _rule_based_evaluate"
    },
    {
      "id": "edge:3fb9af70",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator._llm_evaluate",
      "type": "contains",
      "label": "方法 _llm_evaluate"
    },
    {
      "id": "edge:c575e219",
      "source": "class:Orchestrator",
      "target": "func:Orchestrator._reexecute_failed",
      "type": "contains",
      "label": "方法 _reexecute_failed"
    },
    {
      "id": "edge:12af9db0",
      "source": "file:src/agentkit/core/plan_checker.py",
      "target": "class:CheckStatus",
      "type": "contains",
      "label": "定义类 CheckStatus"
    },
    {
      "id": "edge:b350fc73",
      "source": "file:src/agentkit/core/plan_checker.py",
      "target": "class:CheckResult",
      "type": "contains",
      "label": "定义类 CheckResult"
    },
    {
      "id": "edge:2a019b04",
      "source": "file:src/agentkit/core/plan_checker.py",
      "target": "class:ReviewReport",
      "type": "contains",
      "label": "定义类 ReviewReport"
    },
    {
      "id": "edge:e05d33e3",
      "source": "class:ReviewReport",
      "target": "func:ReviewReport.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:8ca26be8",
      "source": "file:src/agentkit/core/plan_checker.py",
      "target": "class:QualityGate",
      "type": "contains",
      "label": "定义类 QualityGate"
    },
    {
      "id": "edge:20f2e75d",
      "source": "class:QualityGate",
      "target": "func:QualityGate.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:1e165805",
      "source": "class:QualityGate",
      "target": "func:QualityGate.check",
      "type": "contains",
      "label": "方法 check"
    },
    {
      "id": "edge:226021c0",
      "source": "class:QualityGate",
      "target": "func:QualityGate._check_required_fields",
      "type": "contains",
      "label": "方法 _check_required_fields"
    },
    {
      "id": "edge:18094978",
      "source": "class:QualityGate",
      "target": "func:QualityGate._check_min_word_count",
      "type": "contains",
      "label": "方法 _check_min_word_count"
    },
    {
      "id": "edge:adcc5dfb",
      "source": "class:QualityGate",
      "target": "func:QualityGate._check_custom",
      "type": "contains",
      "label": "方法 _check_custom"
    },
    {
      "id": "edge:29d2ae42",
      "source": "class:QualityGate",
      "target": "func:QualityGate._compute_quality_score",
      "type": "contains",
      "label": "方法 _compute_quality_score"
    },
    {
      "id": "edge:32af88af",
      "source": "file:src/agentkit/core/plan_checker.py",
      "target": "class:RuleBasedStepReflector",
      "type": "contains",
      "label": "定义类 RuleBasedStepReflector"
    },
    {
      "id": "edge:529ec748",
      "source": "class:RuleBasedStepReflector",
      "target": "func:RuleBasedStepReflector.reflect_step",
      "type": "contains",
      "label": "方法 reflect_step"
    },
    {
      "id": "edge:01523ce1",
      "source": "file:src/agentkit/core/plan_checker.py",
      "target": "class:PlanChecker",
      "type": "contains",
      "label": "定义类 PlanChecker"
    },
    {
      "id": "edge:81410088",
      "source": "class:PlanChecker",
      "target": "func:PlanChecker.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:d2c7c3fb",
      "source": "class:PlanChecker",
      "target": "func:PlanChecker.check_step",
      "type": "contains",
      "label": "方法 check_step"
    },
    {
      "id": "edge:c2595375",
      "source": "class:PlanChecker",
      "target": "func:PlanChecker.review_plan",
      "type": "contains",
      "label": "方法 review_plan"
    },
    {
      "id": "edge:4f02eecf",
      "source": "class:PlanChecker",
      "target": "func:PlanChecker.should_retry",
      "type": "contains",
      "label": "方法 should_retry"
    },
    {
      "id": "edge:62f6f830",
      "source": "class:PlanChecker",
      "target": "func:PlanChecker.should_request_human",
      "type": "contains",
      "label": "方法 should_request_human"
    },
    {
      "id": "edge:f8fa1190",
      "source": "class:PlanChecker",
      "target": "func:PlanChecker.make_step_complete_callback",
      "type": "contains",
      "label": "方法 make_step_complete_callback"
    },
    {
      "id": "edge:b0ea9505",
      "source": "class:PlanChecker",
      "target": "func:PlanChecker._collect_failure_reasons",
      "type": "contains",
      "label": "方法 _collect_failure_reasons"
    },
    {
      "id": "edge:4c78f275",
      "source": "class:PlanChecker",
      "target": "func:PlanChecker._determine_outcome",
      "type": "contains",
      "label": "方法 _determine_outcome"
    },
    {
      "id": "edge:17e6bd5e",
      "source": "class:PlanChecker",
      "target": "func:PlanChecker._generate_optimization_tips",
      "type": "contains",
      "label": "方法 _generate_optimization_tips"
    },
    {
      "id": "edge:2dc5dcbc",
      "source": "class:PlanChecker",
      "target": "func:PlanChecker._write_experience",
      "type": "contains",
      "label": "方法 _write_experience"
    },
    {
      "id": "edge:45cc2f0a",
      "source": "class:PlanChecker",
      "target": "func:PlanChecker.reset",
      "type": "contains",
      "label": "方法 reset"
    },
    {
      "id": "edge:2cc61531",
      "source": "file:src/agentkit/core/plan_executor.py",
      "target": "class:FailureAction",
      "type": "contains",
      "label": "定义类 FailureAction"
    },
    {
      "id": "edge:7cfd3be4",
      "source": "file:src/agentkit/core/plan_executor.py",
      "target": "class:StepExecutionResult",
      "type": "contains",
      "label": "定义类 StepExecutionResult"
    },
    {
      "id": "edge:a2faaa14",
      "source": "file:src/agentkit/core/plan_executor.py",
      "target": "class:PlanExecutionResult",
      "type": "contains",
      "label": "定义类 PlanExecutionResult"
    },
    {
      "id": "edge:f4db7e1a",
      "source": "class:PlanExecutionResult",
      "target": "func:PlanExecutionResult.completed_steps",
      "type": "contains",
      "label": "方法 completed_steps"
    },
    {
      "id": "edge:4f5188df",
      "source": "class:PlanExecutionResult",
      "target": "func:PlanExecutionResult.failed_steps",
      "type": "contains",
      "label": "方法 failed_steps"
    },
    {
      "id": "edge:c94746bc",
      "source": "class:PlanExecutionResult",
      "target": "func:PlanExecutionResult.skipped_steps",
      "type": "contains",
      "label": "方法 skipped_steps"
    },
    {
      "id": "edge:670fd038",
      "source": "file:src/agentkit/core/plan_executor.py",
      "target": "class:PlanExecutor",
      "type": "contains",
      "label": "定义类 PlanExecutor"
    },
    {
      "id": "edge:7bd4d77a",
      "source": "class:PlanExecutor",
      "target": "func:PlanExecutor.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c42a0489",
      "source": "class:PlanExecutor",
      "target": "func:PlanExecutor.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:9bd1ae4c",
      "source": "class:PlanExecutor",
      "target": "func:PlanExecutor._execute_step_with_retry",
      "type": "contains",
      "label": "方法 _execute_step_with_retry"
    },
    {
      "id": "edge:3c8cec51",
      "source": "class:PlanExecutor",
      "target": "func:PlanExecutor._execute_step_once",
      "type": "contains",
      "label": "方法 _execute_step_once"
    },
    {
      "id": "edge:d7cf735c",
      "source": "class:PlanExecutor",
      "target": "func:PlanExecutor._handle_step_failure",
      "type": "contains",
      "label": "方法 _handle_step_failure"
    },
    {
      "id": "edge:fbd1e308",
      "source": "class:PlanExecutor",
      "target": "func:PlanExecutor._default_failure_action",
      "type": "contains",
      "label": "方法 _default_failure_action"
    },
    {
      "id": "edge:4c905f05",
      "source": "class:PlanExecutor",
      "target": "func:PlanExecutor._skip_dependent_steps",
      "type": "contains",
      "label": "方法 _skip_dependent_steps"
    },
    {
      "id": "edge:504f8cd9",
      "source": "class:PlanExecutor",
      "target": "func:PlanExecutor._abort_remaining_steps",
      "type": "contains",
      "label": "方法 _abort_remaining_steps"
    },
    {
      "id": "edge:a41e83d8",
      "source": "class:PlanExecutor",
      "target": "func:PlanExecutor._inject_dependency_results",
      "type": "contains",
      "label": "方法 _inject_dependency_results"
    },
    {
      "id": "edge:a838e297",
      "source": "class:PlanExecutor",
      "target": "func:PlanExecutor._determine_overall_status",
      "type": "contains",
      "label": "方法 _determine_overall_status"
    },
    {
      "id": "edge:dde01971",
      "source": "file:src/agentkit/core/plan_schema.py",
      "target": "class:PlanStepStatus",
      "type": "contains",
      "label": "定义类 PlanStepStatus"
    },
    {
      "id": "edge:f2c94235",
      "source": "file:src/agentkit/core/plan_schema.py",
      "target": "class:SkillGapLevel",
      "type": "contains",
      "label": "定义类 SkillGapLevel"
    },
    {
      "id": "edge:a8c6df95",
      "source": "file:src/agentkit/core/plan_schema.py",
      "target": "class:SkillGap",
      "type": "contains",
      "label": "定义类 SkillGap"
    },
    {
      "id": "edge:faef2d9e",
      "source": "file:src/agentkit/core/plan_schema.py",
      "target": "class:PlanStep",
      "type": "contains",
      "label": "定义类 PlanStep"
    },
    {
      "id": "edge:1d82d90d",
      "source": "class:PlanStep",
      "target": "func:PlanStep.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:d66f3419",
      "source": "file:src/agentkit/core/plan_schema.py",
      "target": "class:ExecutionPlan",
      "type": "contains",
      "label": "定义类 ExecutionPlan"
    },
    {
      "id": "edge:b2538eed",
      "source": "class:ExecutionPlan",
      "target": "func:ExecutionPlan.has_skill_gaps",
      "type": "contains",
      "label": "方法 has_skill_gaps"
    },
    {
      "id": "edge:d9417a05",
      "source": "class:ExecutionPlan",
      "target": "func:ExecutionPlan.get_step",
      "type": "contains",
      "label": "方法 get_step"
    },
    {
      "id": "edge:06079664",
      "source": "class:ExecutionPlan",
      "target": "func:ExecutionPlan.to_readable",
      "type": "contains",
      "label": "方法 to_readable"
    },
    {
      "id": "edge:84f7a405",
      "source": "class:ExecutionPlan",
      "target": "func:ExecutionPlan.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:45b0413b",
      "source": "file:src/agentkit/core/protocol.py",
      "target": "class:TaskStatus",
      "type": "contains",
      "label": "定义类 TaskStatus"
    },
    {
      "id": "edge:bd28c6d6",
      "source": "file:src/agentkit/core/protocol.py",
      "target": "class:AgentStatus",
      "type": "contains",
      "label": "定义类 AgentStatus"
    },
    {
      "id": "edge:b2bdf82b",
      "source": "file:src/agentkit/core/protocol.py",
      "target": "class:AgentCapability",
      "type": "contains",
      "label": "定义类 AgentCapability"
    },
    {
      "id": "edge:ccd5f871",
      "source": "class:AgentCapability",
      "target": "func:AgentCapability.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:97e3b1c0",
      "source": "class:AgentCapability",
      "target": "func:AgentCapability.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:6e3bbcf9",
      "source": "file:src/agentkit/core/protocol.py",
      "target": "class:TaskMessage",
      "type": "contains",
      "label": "定义类 TaskMessage"
    },
    {
      "id": "edge:fa3d622f",
      "source": "class:TaskMessage",
      "target": "func:TaskMessage.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:3fb46011",
      "source": "class:TaskMessage",
      "target": "func:TaskMessage.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:0cccb49b",
      "source": "file:src/agentkit/core/protocol.py",
      "target": "class:TaskResult",
      "type": "contains",
      "label": "定义类 TaskResult"
    },
    {
      "id": "edge:2b964b8d",
      "source": "class:TaskResult",
      "target": "func:TaskResult.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:cc84d8d3",
      "source": "class:TaskResult",
      "target": "func:TaskResult.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:d91c6319",
      "source": "file:src/agentkit/core/protocol.py",
      "target": "class:TaskProgress",
      "type": "contains",
      "label": "定义类 TaskProgress"
    },
    {
      "id": "edge:fa712235",
      "source": "class:TaskProgress",
      "target": "func:TaskProgress.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:010e9ef7",
      "source": "class:TaskProgress",
      "target": "func:TaskProgress.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:dc6d58a0",
      "source": "file:src/agentkit/core/protocol.py",
      "target": "class:HandoffMessage",
      "type": "contains",
      "label": "定义类 HandoffMessage"
    },
    {
      "id": "edge:689be86a",
      "source": "class:HandoffMessage",
      "target": "func:HandoffMessage.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:3ac1c543",
      "source": "class:HandoffMessage",
      "target": "func:HandoffMessage.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:66510171",
      "source": "file:src/agentkit/core/protocol.py",
      "target": "class:EvolutionEvent",
      "type": "contains",
      "label": "定义类 EvolutionEvent"
    },
    {
      "id": "edge:75008efb",
      "source": "class:EvolutionEvent",
      "target": "func:EvolutionEvent.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:4697fc10",
      "source": "file:src/agentkit/core/protocol.py",
      "target": "class:CancellationToken",
      "type": "contains",
      "label": "定义类 CancellationToken"
    },
    {
      "id": "edge:4624e4eb",
      "source": "class:CancellationToken",
      "target": "func:CancellationToken.cancel",
      "type": "contains",
      "label": "方法 cancel"
    },
    {
      "id": "edge:54695c0e",
      "source": "class:CancellationToken",
      "target": "func:CancellationToken.is_cancelled",
      "type": "contains",
      "label": "方法 is_cancelled"
    },
    {
      "id": "edge:2fdf8382",
      "source": "class:CancellationToken",
      "target": "func:CancellationToken.check",
      "type": "contains",
      "label": "方法 check"
    },
    {
      "id": "edge:472888e7",
      "source": "file:src/agentkit/core/react.py",
      "target": "class:ReActStep",
      "type": "contains",
      "label": "定义类 ReActStep"
    },
    {
      "id": "edge:2fc5fd21",
      "source": "file:src/agentkit/core/react.py",
      "target": "class:ReActResult",
      "type": "contains",
      "label": "定义类 ReActResult"
    },
    {
      "id": "edge:bac71a53",
      "source": "file:src/agentkit/core/react.py",
      "target": "class:ReActEvent",
      "type": "contains",
      "label": "定义类 ReActEvent"
    },
    {
      "id": "edge:08fd675a",
      "source": "file:src/agentkit/core/react.py",
      "target": "class:ReActEngine",
      "type": "contains",
      "label": "定义类 ReActEngine"
    },
    {
      "id": "edge:3d39dd24",
      "source": "class:ReActEngine",
      "target": "func:ReActEngine.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:4eaa84da",
      "source": "class:ReActEngine",
      "target": "func:ReActEngine.reset",
      "type": "contains",
      "label": "方法 reset"
    },
    {
      "id": "edge:6c826735",
      "source": "class:ReActEngine",
      "target": "func:ReActEngine.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:00dabe31",
      "source": "class:ReActEngine",
      "target": "func:ReActEngine._execute_loop",
      "type": "contains",
      "label": "方法 _execute_loop"
    },
    {
      "id": "edge:cf1f06f1",
      "source": "class:ReActEngine",
      "target": "func:ReActEngine.execute_stream",
      "type": "contains",
      "label": "方法 execute_stream"
    },
    {
      "id": "edge:76f38f2a",
      "source": "class:ReActEngine",
      "target": "func:ReActEngine._build_tool_schemas",
      "type": "contains",
      "label": "方法 _build_tool_schemas"
    },
    {
      "id": "edge:8e2613d8",
      "source": "class:ReActEngine",
      "target": "func:ReActEngine._build_response_from_stream",
      "type": "contains",
      "label": "方法 _build_response_from_stream"
    },
    {
      "id": "edge:5f85f74e",
      "source": "class:ReActEngine",
      "target": "func:ReActEngine._find_tool",
      "type": "contains",
      "label": "方法 _find_tool"
    },
    {
      "id": "edge:593c3664",
      "source": "class:ReActEngine",
      "target": "func:ReActEngine._should_compress",
      "type": "contains",
      "label": "方法 _should_compress"
    },
    {
      "id": "edge:be17dc12",
      "source": "class:ReActEngine",
      "target": "func:ReActEngine._build_tool_result_message",
      "type": "contains",
      "label": "方法 _build_tool_result_message"
    },
    {
      "id": "edge:33a58ef2",
      "source": "class:ReActEngine",
      "target": "func:ReActEngine._execute_tool",
      "type": "contains",
      "label": "方法 _execute_tool"
    },
    {
      "id": "edge:e0418f84",
      "source": "class:ReActEngine",
      "target": "func:ReActEngine._execute_tool_with_confirmation",
      "type": "contains",
      "label": "方法 _execute_tool_with_confirmation"
    },
    {
      "id": "edge:75eb0e4f",
      "source": "class:ReActEngine",
      "target": "func:ReActEngine._should_execute_parallel",
      "type": "contains",
      "label": "方法 _should_execute_parallel"
    },
    {
      "id": "edge:400265ce",
      "source": "class:ReActEngine",
      "target": "func:ReActEngine._get_parallelizable_indices",
      "type": "contains",
      "label": "方法 _get_parallelizable_indices"
    },
    {
      "id": "edge:37fc728d",
      "source": "class:ReActEngine",
      "target": "func:ReActEngine._parse_text_tool_calls",
      "type": "contains",
      "label": "方法 _parse_text_tool_calls"
    },
    {
      "id": "edge:49156af8",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "class:ReflexionReflection",
      "type": "contains",
      "label": "定义类 ReflexionReflection"
    },
    {
      "id": "edge:fd7ff9b5",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "class:ReflexionResult",
      "type": "contains",
      "label": "定义类 ReflexionResult"
    },
    {
      "id": "edge:ac5906f7",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "class:ReflexionEngine",
      "type": "contains",
      "label": "定义类 ReflexionEngine"
    },
    {
      "id": "edge:17078b5d",
      "source": "class:ReflexionEngine",
      "target": "func:ReflexionEngine.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:9f4e78b6",
      "source": "class:ReflexionEngine",
      "target": "func:ReflexionEngine.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:7e3d32ff",
      "source": "class:ReflexionEngine",
      "target": "func:ReflexionEngine._execute_loop",
      "type": "contains",
      "label": "方法 _execute_loop"
    },
    {
      "id": "edge:be683a73",
      "source": "class:ReflexionEngine",
      "target": "func:ReflexionEngine.execute_stream",
      "type": "contains",
      "label": "方法 execute_stream"
    },
    {
      "id": "edge:2f509811",
      "source": "class:ReflexionEngine",
      "target": "func:ReflexionEngine._evaluate",
      "type": "contains",
      "label": "方法 _evaluate"
    },
    {
      "id": "edge:598939a8",
      "source": "class:ReflexionEngine",
      "target": "func:ReflexionEngine._parse_evaluation_score",
      "type": "contains",
      "label": "方法 _parse_evaluation_score"
    },
    {
      "id": "edge:bb82a0a8",
      "source": "class:ReflexionEngine",
      "target": "func:ReflexionEngine._reflect",
      "type": "contains",
      "label": "方法 _reflect"
    },
    {
      "id": "edge:358cea93",
      "source": "class:ReflexionEngine",
      "target": "func:ReflexionEngine._build_reflection_prompt",
      "type": "contains",
      "label": "方法 _build_reflection_prompt"
    },
    {
      "id": "edge:ac7377f3",
      "source": "file:src/agentkit/core/registry.py",
      "target": "class:AgentRegistry",
      "type": "contains",
      "label": "定义类 AgentRegistry"
    },
    {
      "id": "edge:d79ba299",
      "source": "class:AgentRegistry",
      "target": "func:AgentRegistry.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:f8ef98d7",
      "source": "class:AgentRegistry",
      "target": "func:AgentRegistry.register",
      "type": "contains",
      "label": "方法 register"
    },
    {
      "id": "edge:5de5331a",
      "source": "class:AgentRegistry",
      "target": "func:AgentRegistry.unregister",
      "type": "contains",
      "label": "方法 unregister"
    },
    {
      "id": "edge:62553489",
      "source": "class:AgentRegistry",
      "target": "func:AgentRegistry.update_heartbeat",
      "type": "contains",
      "label": "方法 update_heartbeat"
    },
    {
      "id": "edge:b8bd048a",
      "source": "class:AgentRegistry",
      "target": "func:AgentRegistry.get_agent",
      "type": "contains",
      "label": "方法 get_agent"
    },
    {
      "id": "edge:a712fa0b",
      "source": "class:AgentRegistry",
      "target": "func:AgentRegistry.list_agents",
      "type": "contains",
      "label": "方法 list_agents"
    },
    {
      "id": "edge:21fa2d5c",
      "source": "class:AgentRegistry",
      "target": "func:AgentRegistry.get_available_agent",
      "type": "contains",
      "label": "方法 get_available_agent"
    },
    {
      "id": "edge:0b28b5c0",
      "source": "class:AgentRegistry",
      "target": "func:AgentRegistry.check_health",
      "type": "contains",
      "label": "方法 check_health"
    },
    {
      "id": "edge:83fbe99c",
      "source": "class:AgentRegistry",
      "target": "func:AgentRegistry._agent_to_dict",
      "type": "contains",
      "label": "方法 _agent_to_dict"
    },
    {
      "id": "edge:8a354e24",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "class:_FallbackFailedError",
      "type": "contains",
      "label": "定义类 _FallbackFailedError"
    },
    {
      "id": "edge:f1b61ca5",
      "source": "class:_FallbackFailedError",
      "target": "func:_FallbackFailedError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c3ce591a",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "class:ReWOOPlanStep",
      "type": "contains",
      "label": "定义类 ReWOOPlanStep"
    },
    {
      "id": "edge:27622534",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "class:ReWOOPlan",
      "type": "contains",
      "label": "定义类 ReWOOPlan"
    },
    {
      "id": "edge:0e2bfc2b",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "class:ReWOOStep",
      "type": "contains",
      "label": "定义类 ReWOOStep"
    },
    {
      "id": "edge:267d3228",
      "source": "class:ReWOOStep",
      "target": "class:ReActStep",
      "type": "extends",
      "label": "继承 ReActStep"
    },
    {
      "id": "edge:3dba3d31",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "class:ReWOOEngine",
      "type": "contains",
      "label": "定义类 ReWOOEngine"
    },
    {
      "id": "edge:6b832c2b",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:f3d5eaad",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:576ca69d",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._execute_rewoo",
      "type": "contains",
      "label": "方法 _execute_rewoo"
    },
    {
      "id": "edge:6aae3030",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine.execute_stream",
      "type": "contains",
      "label": "方法 execute_stream"
    },
    {
      "id": "edge:859a29ef",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._try_fallback_strategies_stream",
      "type": "contains",
      "label": "方法 _try_fallback_strategies_stream"
    },
    {
      "id": "edge:a58f4b9c",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._fallback_simplified_rewoo_stream",
      "type": "contains",
      "label": "方法 _fallback_simplified_rewoo_stream"
    },
    {
      "id": "edge:6c503b15",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._fallback_react_stream",
      "type": "contains",
      "label": "方法 _fallback_react_stream"
    },
    {
      "id": "edge:2afa9ccc",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._fallback_direct_stream",
      "type": "contains",
      "label": "方法 _fallback_direct_stream"
    },
    {
      "id": "edge:e0c68a02",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._fallback_plan_exec_stream",
      "type": "contains",
      "label": "方法 _fallback_plan_exec_stream"
    },
    {
      "id": "edge:903c8fd1",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._try_fallback_strategies",
      "type": "contains",
      "label": "方法 _try_fallback_strategies"
    },
    {
      "id": "edge:e3c9a433",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._fallback_simplified_rewoo",
      "type": "contains",
      "label": "方法 _fallback_simplified_rewoo"
    },
    {
      "id": "edge:9711dae5",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._fallback_react",
      "type": "contains",
      "label": "方法 _fallback_react"
    },
    {
      "id": "edge:801b694b",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._fallback_direct",
      "type": "contains",
      "label": "方法 _fallback_direct"
    },
    {
      "id": "edge:df44aadb",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._fallback_plan_exec",
      "type": "contains",
      "label": "方法 _fallback_plan_exec"
    },
    {
      "id": "edge:86114d67",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._plan_phase",
      "type": "contains",
      "label": "方法 _plan_phase"
    },
    {
      "id": "edge:9398e377",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._synthesis_phase",
      "type": "contains",
      "label": "方法 _synthesis_phase"
    },
    {
      "id": "edge:1b94455e",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._build_tool_schemas",
      "type": "contains",
      "label": "方法 _build_tool_schemas"
    },
    {
      "id": "edge:3ca0d4a3",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._build_tool_descriptions",
      "type": "contains",
      "label": "方法 _build_tool_descriptions"
    },
    {
      "id": "edge:4516dcd9",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._parse_plan",
      "type": "contains",
      "label": "方法 _parse_plan"
    },
    {
      "id": "edge:193d96e4",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._find_tool",
      "type": "contains",
      "label": "方法 _find_tool"
    },
    {
      "id": "edge:db3dd8de",
      "source": "class:ReWOOEngine",
      "target": "func:ReWOOEngine._execute_tool",
      "type": "contains",
      "label": "方法 _execute_tool"
    },
    {
      "id": "edge:6589bdc7",
      "source": "file:src/agentkit/core/shared_workspace.py",
      "target": "class:SharedWorkspace",
      "type": "contains",
      "label": "定义类 SharedWorkspace"
    },
    {
      "id": "edge:a4b3d441",
      "source": "class:SharedWorkspace",
      "target": "func:SharedWorkspace.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:635fe1ea",
      "source": "class:SharedWorkspace",
      "target": "func:SharedWorkspace._make_key",
      "type": "contains",
      "label": "方法 _make_key"
    },
    {
      "id": "edge:61d66644",
      "source": "class:SharedWorkspace",
      "target": "func:SharedWorkspace.write",
      "type": "contains",
      "label": "方法 write"
    },
    {
      "id": "edge:6e0c5f6e",
      "source": "class:SharedWorkspace",
      "target": "func:SharedWorkspace.read",
      "type": "contains",
      "label": "方法 read"
    },
    {
      "id": "edge:a94eca55",
      "source": "class:SharedWorkspace",
      "target": "func:SharedWorkspace.delete",
      "type": "contains",
      "label": "方法 delete"
    },
    {
      "id": "edge:86eac6a6",
      "source": "class:SharedWorkspace",
      "target": "func:SharedWorkspace.lock",
      "type": "contains",
      "label": "方法 lock"
    },
    {
      "id": "edge:b02a12cd",
      "source": "class:SharedWorkspace",
      "target": "func:SharedWorkspace.unlock",
      "type": "contains",
      "label": "方法 unlock"
    },
    {
      "id": "edge:5c63e85a",
      "source": "class:SharedWorkspace",
      "target": "func:SharedWorkspace._get_version",
      "type": "contains",
      "label": "方法 _get_version"
    },
    {
      "id": "edge:ae68212f",
      "source": "class:SharedWorkspace",
      "target": "func:SharedWorkspace.list_keys",
      "type": "contains",
      "label": "方法 list_keys"
    },
    {
      "id": "edge:c3d1ad7e",
      "source": "file:src/agentkit/core/standalone.py",
      "target": "class:StandaloneRunner",
      "type": "contains",
      "label": "定义类 StandaloneRunner"
    },
    {
      "id": "edge:95931e01",
      "source": "class:StandaloneRunner",
      "target": "func:StandaloneRunner.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c9f93027",
      "source": "class:StandaloneRunner",
      "target": "func:StandaloneRunner.agents",
      "type": "contains",
      "label": "方法 agents"
    },
    {
      "id": "edge:f07dfdfc",
      "source": "class:StandaloneRunner",
      "target": "func:StandaloneRunner.add_tool",
      "type": "contains",
      "label": "方法 add_tool"
    },
    {
      "id": "edge:6ea5d1a5",
      "source": "class:StandaloneRunner",
      "target": "func:StandaloneRunner.add_custom_handler",
      "type": "contains",
      "label": "方法 add_custom_handler"
    },
    {
      "id": "edge:b19d5693",
      "source": "class:StandaloneRunner",
      "target": "func:StandaloneRunner.discover_configs",
      "type": "contains",
      "label": "方法 discover_configs"
    },
    {
      "id": "edge:e756f98c",
      "source": "class:StandaloneRunner",
      "target": "func:StandaloneRunner.build_agents",
      "type": "contains",
      "label": "方法 build_agents"
    },
    {
      "id": "edge:15de7360",
      "source": "class:StandaloneRunner",
      "target": "func:StandaloneRunner.start_all",
      "type": "contains",
      "label": "方法 start_all"
    },
    {
      "id": "edge:c2c4e647",
      "source": "class:StandaloneRunner",
      "target": "func:StandaloneRunner.stop_all",
      "type": "contains",
      "label": "方法 stop_all"
    },
    {
      "id": "edge:834ecff4",
      "source": "class:StandaloneRunner",
      "target": "func:StandaloneRunner.execute_task",
      "type": "contains",
      "label": "方法 execute_task"
    },
    {
      "id": "edge:33b3179e",
      "source": "file:src/agentkit/core/trace.py",
      "target": "class:TraceStep",
      "type": "contains",
      "label": "定义类 TraceStep"
    },
    {
      "id": "edge:60452398",
      "source": "class:TraceStep",
      "target": "func:TraceStep.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:41e4e951",
      "source": "file:src/agentkit/core/trace.py",
      "target": "class:ExecutionTrace",
      "type": "contains",
      "label": "定义类 ExecutionTrace"
    },
    {
      "id": "edge:d45c0b19",
      "source": "class:ExecutionTrace",
      "target": "func:ExecutionTrace.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:b3a8e7e0",
      "source": "file:src/agentkit/core/trace.py",
      "target": "class:TraceRecorder",
      "type": "contains",
      "label": "定义类 TraceRecorder"
    },
    {
      "id": "edge:e537aeb8",
      "source": "class:TraceRecorder",
      "target": "func:TraceRecorder.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:70ff5db2",
      "source": "class:TraceRecorder",
      "target": "func:TraceRecorder.start_trace",
      "type": "contains",
      "label": "方法 start_trace"
    },
    {
      "id": "edge:a818af9d",
      "source": "class:TraceRecorder",
      "target": "func:TraceRecorder.record_step",
      "type": "contains",
      "label": "方法 record_step"
    },
    {
      "id": "edge:6ee4ad51",
      "source": "class:TraceRecorder",
      "target": "func:TraceRecorder.end_trace",
      "type": "contains",
      "label": "方法 end_trace"
    },
    {
      "id": "edge:1268863d",
      "source": "class:TraceRecorder",
      "target": "func:TraceRecorder.get_trace",
      "type": "contains",
      "label": "方法 get_trace"
    },
    {
      "id": "edge:d8e0fe75",
      "source": "class:TraceRecorder",
      "target": "func:TraceRecorder.start_step_timer",
      "type": "contains",
      "label": "方法 start_step_timer"
    },
    {
      "id": "edge:0f5e0991",
      "source": "class:TraceRecorder",
      "target": "func:TraceRecorder.elapsed_ms",
      "type": "contains",
      "label": "方法 elapsed_ms"
    },
    {
      "id": "edge:15bd371f",
      "source": "file:src/agentkit/evaluation/ragas_evaluator.py",
      "target": "class:EvalSample",
      "type": "contains",
      "label": "定义类 EvalSample"
    },
    {
      "id": "edge:c5f85c56",
      "source": "file:src/agentkit/evaluation/ragas_evaluator.py",
      "target": "class:EvalMetrics",
      "type": "contains",
      "label": "定义类 EvalMetrics"
    },
    {
      "id": "edge:47022d5c",
      "source": "class:EvalMetrics",
      "target": "func:EvalMetrics.average",
      "type": "contains",
      "label": "方法 average"
    },
    {
      "id": "edge:32d590c3",
      "source": "class:EvalMetrics",
      "target": "func:EvalMetrics.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:f3a5eb3f",
      "source": "file:src/agentkit/evaluation/ragas_evaluator.py",
      "target": "class:EvalResult",
      "type": "contains",
      "label": "定义类 EvalResult"
    },
    {
      "id": "edge:05064528",
      "source": "file:src/agentkit/evaluation/ragas_evaluator.py",
      "target": "class:EvalDatasetBuilder",
      "type": "contains",
      "label": "定义类 EvalDatasetBuilder"
    },
    {
      "id": "edge:94641aec",
      "source": "class:EvalDatasetBuilder",
      "target": "func:EvalDatasetBuilder.from_traces",
      "type": "contains",
      "label": "方法 from_traces"
    },
    {
      "id": "edge:a2699ef5",
      "source": "class:EvalDatasetBuilder",
      "target": "func:EvalDatasetBuilder.from_dict_list",
      "type": "contains",
      "label": "方法 from_dict_list"
    },
    {
      "id": "edge:b3893fac",
      "source": "file:src/agentkit/evaluation/ragas_evaluator.py",
      "target": "class:RagasEvaluator",
      "type": "contains",
      "label": "定义类 RagasEvaluator"
    },
    {
      "id": "edge:7437dc63",
      "source": "class:RagasEvaluator",
      "target": "func:RagasEvaluator.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c824fe7a",
      "source": "class:RagasEvaluator",
      "target": "func:RagasEvaluator.evaluate",
      "type": "contains",
      "label": "方法 evaluate"
    },
    {
      "id": "edge:abdc0aba",
      "source": "class:RagasEvaluator",
      "target": "func:RagasEvaluator._evaluate_with_ragas",
      "type": "contains",
      "label": "方法 _evaluate_with_ragas"
    },
    {
      "id": "edge:40e5a88c",
      "source": "class:RagasEvaluator",
      "target": "func:RagasEvaluator._evaluate_builtin",
      "type": "contains",
      "label": "方法 _evaluate_builtin"
    },
    {
      "id": "edge:30464508",
      "source": "file:src/agentkit/evolution/ab_tester.py",
      "target": "class:ABTestConfig",
      "type": "contains",
      "label": "定义类 ABTestConfig"
    },
    {
      "id": "edge:8d24ec6e",
      "source": "file:src/agentkit/evolution/ab_tester.py",
      "target": "class:ABTestResult",
      "type": "contains",
      "label": "定义类 ABTestResult"
    },
    {
      "id": "edge:b56c808d",
      "source": "file:src/agentkit/evolution/ab_tester.py",
      "target": "class:ABTester",
      "type": "contains",
      "label": "定义类 ABTester"
    },
    {
      "id": "edge:e595c2c2",
      "source": "class:ABTester",
      "target": "func:ABTester.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:cef4be69",
      "source": "class:ABTester",
      "target": "func:ABTester.create_test",
      "type": "contains",
      "label": "方法 create_test"
    },
    {
      "id": "edge:9c3f6446",
      "source": "class:ABTester",
      "target": "func:ABTester.assign_group",
      "type": "contains",
      "label": "方法 assign_group"
    },
    {
      "id": "edge:82e7e2b6",
      "source": "class:ABTester",
      "target": "func:ABTester.record_result",
      "type": "contains",
      "label": "方法 record_result"
    },
    {
      "id": "edge:6c18d4fc",
      "source": "class:ABTester",
      "target": "func:ABTester.persist_results",
      "type": "contains",
      "label": "方法 persist_results"
    },
    {
      "id": "edge:20ded4ab",
      "source": "class:ABTester",
      "target": "func:ABTester.evaluate",
      "type": "contains",
      "label": "方法 evaluate"
    },
    {
      "id": "edge:601ad5d7",
      "source": "class:ABTester",
      "target": "func:ABTester._normal_cdf",
      "type": "contains",
      "label": "方法 _normal_cdf"
    },
    {
      "id": "edge:3319c936",
      "source": "file:src/agentkit/evolution/evolution_store.py",
      "target": "class:EvolutionStoreProtocol",
      "type": "contains",
      "label": "定义类 EvolutionStoreProtocol"
    },
    {
      "id": "edge:87a6a5e6",
      "source": "class:EvolutionStoreProtocol",
      "target": "func:EvolutionStoreProtocol.record",
      "type": "contains",
      "label": "方法 record"
    },
    {
      "id": "edge:8ebe7c57",
      "source": "class:EvolutionStoreProtocol",
      "target": "func:EvolutionStoreProtocol.rollback",
      "type": "contains",
      "label": "方法 rollback"
    },
    {
      "id": "edge:88ab0c32",
      "source": "class:EvolutionStoreProtocol",
      "target": "func:EvolutionStoreProtocol.list_events",
      "type": "contains",
      "label": "方法 list_events"
    },
    {
      "id": "edge:d09ace44",
      "source": "class:EvolutionStoreProtocol",
      "target": "func:EvolutionStoreProtocol.record_skill_version",
      "type": "contains",
      "label": "方法 record_skill_version"
    },
    {
      "id": "edge:ee19872d",
      "source": "class:EvolutionStoreProtocol",
      "target": "func:EvolutionStoreProtocol.list_skill_versions",
      "type": "contains",
      "label": "方法 list_skill_versions"
    },
    {
      "id": "edge:b774824a",
      "source": "class:EvolutionStoreProtocol",
      "target": "func:EvolutionStoreProtocol.record_ab_test_result",
      "type": "contains",
      "label": "方法 record_ab_test_result"
    },
    {
      "id": "edge:0bd98f30",
      "source": "class:EvolutionStoreProtocol",
      "target": "func:EvolutionStoreProtocol.get_ab_test_results",
      "type": "contains",
      "label": "方法 get_ab_test_results"
    },
    {
      "id": "edge:354dcbb8",
      "source": "file:src/agentkit/evolution/evolution_store.py",
      "target": "class:EvolutionStore",
      "type": "contains",
      "label": "定义类 EvolutionStore"
    },
    {
      "id": "edge:0d0df586",
      "source": "class:EvolutionStore",
      "target": "func:EvolutionStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:5340fe74",
      "source": "class:EvolutionStore",
      "target": "func:EvolutionStore.record",
      "type": "contains",
      "label": "方法 record"
    },
    {
      "id": "edge:460de8f3",
      "source": "class:EvolutionStore",
      "target": "func:EvolutionStore.rollback",
      "type": "contains",
      "label": "方法 rollback"
    },
    {
      "id": "edge:331b1733",
      "source": "class:EvolutionStore",
      "target": "func:EvolutionStore.list_events",
      "type": "contains",
      "label": "方法 list_events"
    },
    {
      "id": "edge:84f3e224",
      "source": "class:EvolutionStore",
      "target": "func:EvolutionStore.record_skill_version",
      "type": "contains",
      "label": "方法 record_skill_version"
    },
    {
      "id": "edge:b490c748",
      "source": "class:EvolutionStore",
      "target": "func:EvolutionStore.list_skill_versions",
      "type": "contains",
      "label": "方法 list_skill_versions"
    },
    {
      "id": "edge:4b43a200",
      "source": "class:EvolutionStore",
      "target": "func:EvolutionStore.record_ab_test_result",
      "type": "contains",
      "label": "方法 record_ab_test_result"
    },
    {
      "id": "edge:0235b936",
      "source": "class:EvolutionStore",
      "target": "func:EvolutionStore.get_ab_test_results",
      "type": "contains",
      "label": "方法 get_ab_test_results"
    },
    {
      "id": "edge:54d5114a",
      "source": "file:src/agentkit/evolution/evolution_store.py",
      "target": "class:PersistentEvolutionStore",
      "type": "contains",
      "label": "定义类 PersistentEvolutionStore"
    },
    {
      "id": "edge:37ff54d8",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:2dbe7ae4",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore._run_sync",
      "type": "contains",
      "label": "方法 _run_sync"
    },
    {
      "id": "edge:0fb1d8c5",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore.close",
      "type": "contains",
      "label": "方法 close"
    },
    {
      "id": "edge:57d8ad77",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore.__aenter__",
      "type": "contains",
      "label": "方法 __aenter__"
    },
    {
      "id": "edge:a68e8cdf",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore.__aexit__",
      "type": "contains",
      "label": "方法 __aexit__"
    },
    {
      "id": "edge:4af6e5a6",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore._retry_locked",
      "type": "contains",
      "label": "方法 _retry_locked"
    },
    {
      "id": "edge:a6d3022d",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore._record_sync",
      "type": "contains",
      "label": "方法 _record_sync"
    },
    {
      "id": "edge:0466549d",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore.record",
      "type": "contains",
      "label": "方法 record"
    },
    {
      "id": "edge:7561a45f",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore._rollback_sync",
      "type": "contains",
      "label": "方法 _rollback_sync"
    },
    {
      "id": "edge:4a16ce49",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore.rollback",
      "type": "contains",
      "label": "方法 rollback"
    },
    {
      "id": "edge:b7afd122",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore._list_events_sync",
      "type": "contains",
      "label": "方法 _list_events_sync"
    },
    {
      "id": "edge:491fc9d1",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore.list_events",
      "type": "contains",
      "label": "方法 list_events"
    },
    {
      "id": "edge:692bea38",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore._record_skill_version_sync",
      "type": "contains",
      "label": "方法 _record_skill_version_sync"
    },
    {
      "id": "edge:cb1bd070",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore.record_skill_version",
      "type": "contains",
      "label": "方法 record_skill_version"
    },
    {
      "id": "edge:9dff8382",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore._list_skill_versions_sync",
      "type": "contains",
      "label": "方法 _list_skill_versions_sync"
    },
    {
      "id": "edge:cc9e3f9b",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore.list_skill_versions",
      "type": "contains",
      "label": "方法 list_skill_versions"
    },
    {
      "id": "edge:082c6c60",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore._record_ab_test_result_sync",
      "type": "contains",
      "label": "方法 _record_ab_test_result_sync"
    },
    {
      "id": "edge:127179e7",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore.record_ab_test_result",
      "type": "contains",
      "label": "方法 record_ab_test_result"
    },
    {
      "id": "edge:319a509b",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore._get_ab_test_results_sync",
      "type": "contains",
      "label": "方法 _get_ab_test_results_sync"
    },
    {
      "id": "edge:5ef4798b",
      "source": "class:PersistentEvolutionStore",
      "target": "func:PersistentEvolutionStore.get_ab_test_results",
      "type": "contains",
      "label": "方法 get_ab_test_results"
    },
    {
      "id": "edge:b45067bb",
      "source": "file:src/agentkit/evolution/evolution_store.py",
      "target": "class:InMemoryEvolutionStore",
      "type": "contains",
      "label": "定义类 InMemoryEvolutionStore"
    },
    {
      "id": "edge:745a5cdb",
      "source": "class:InMemoryEvolutionStore",
      "target": "func:InMemoryEvolutionStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:b060662e",
      "source": "class:InMemoryEvolutionStore",
      "target": "func:InMemoryEvolutionStore.record",
      "type": "contains",
      "label": "方法 record"
    },
    {
      "id": "edge:40bf8ea0",
      "source": "class:InMemoryEvolutionStore",
      "target": "func:InMemoryEvolutionStore.rollback",
      "type": "contains",
      "label": "方法 rollback"
    },
    {
      "id": "edge:c1f97ef3",
      "source": "class:InMemoryEvolutionStore",
      "target": "func:InMemoryEvolutionStore.list_events",
      "type": "contains",
      "label": "方法 list_events"
    },
    {
      "id": "edge:bc6fb55e",
      "source": "class:InMemoryEvolutionStore",
      "target": "func:InMemoryEvolutionStore.record_skill_version",
      "type": "contains",
      "label": "方法 record_skill_version"
    },
    {
      "id": "edge:3e7b4bd0",
      "source": "class:InMemoryEvolutionStore",
      "target": "func:InMemoryEvolutionStore.list_skill_versions",
      "type": "contains",
      "label": "方法 list_skill_versions"
    },
    {
      "id": "edge:9076ade8",
      "source": "class:InMemoryEvolutionStore",
      "target": "func:InMemoryEvolutionStore.record_ab_test_result",
      "type": "contains",
      "label": "方法 record_ab_test_result"
    },
    {
      "id": "edge:271d1aed",
      "source": "class:InMemoryEvolutionStore",
      "target": "func:InMemoryEvolutionStore.get_ab_test_results",
      "type": "contains",
      "label": "方法 get_ab_test_results"
    },
    {
      "id": "edge:72f7d2fc",
      "source": "file:src/agentkit/evolution/experience_schema.py",
      "target": "class:TaskExperience",
      "type": "contains",
      "label": "定义类 TaskExperience"
    },
    {
      "id": "edge:5706ae91",
      "source": "class:TaskExperience",
      "target": "func:TaskExperience.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:5a2f94da",
      "source": "class:TaskExperience",
      "target": "func:TaskExperience.text_for_embedding",
      "type": "contains",
      "label": "方法 text_for_embedding"
    },
    {
      "id": "edge:b11d5b22",
      "source": "file:src/agentkit/evolution/experience_schema.py",
      "target": "class:EvolutionMetrics",
      "type": "contains",
      "label": "定义类 EvolutionMetrics"
    },
    {
      "id": "edge:d41bfef9",
      "source": "class:EvolutionMetrics",
      "target": "func:EvolutionMetrics.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:c6cae702",
      "source": "file:src/agentkit/evolution/experience_store.py",
      "target": "class:ExperienceStore",
      "type": "contains",
      "label": "定义类 ExperienceStore"
    },
    {
      "id": "edge:b284b262",
      "source": "class:ExperienceStore",
      "target": "func:ExperienceStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:2eb1a310",
      "source": "class:ExperienceStore",
      "target": "func:ExperienceStore.record_experience",
      "type": "contains",
      "label": "方法 record_experience"
    },
    {
      "id": "edge:9cefd9a6",
      "source": "class:ExperienceStore",
      "target": "func:ExperienceStore.search",
      "type": "contains",
      "label": "方法 search"
    },
    {
      "id": "edge:a4b97d1e",
      "source": "class:ExperienceStore",
      "target": "func:ExperienceStore._search_pgvector",
      "type": "contains",
      "label": "方法 _search_pgvector"
    },
    {
      "id": "edge:1156557a",
      "source": "class:ExperienceStore",
      "target": "func:ExperienceStore._search_client_side",
      "type": "contains",
      "label": "方法 _search_client_side"
    },
    {
      "id": "edge:f1cf8e72",
      "source": "class:ExperienceStore",
      "target": "func:ExperienceStore.get_metrics",
      "type": "contains",
      "label": "方法 get_metrics"
    },
    {
      "id": "edge:e67f9dca",
      "source": "file:src/agentkit/evolution/experience_store.py",
      "target": "class:InMemoryExperienceStore",
      "type": "contains",
      "label": "定义类 InMemoryExperienceStore"
    },
    {
      "id": "edge:24c0c968",
      "source": "class:InMemoryExperienceStore",
      "target": "func:InMemoryExperienceStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:ac0e87a0",
      "source": "class:InMemoryExperienceStore",
      "target": "func:InMemoryExperienceStore.record_experience",
      "type": "contains",
      "label": "方法 record_experience"
    },
    {
      "id": "edge:ac7e3ce0",
      "source": "class:InMemoryExperienceStore",
      "target": "func:InMemoryExperienceStore.search",
      "type": "contains",
      "label": "方法 search"
    },
    {
      "id": "edge:bde2e5db",
      "source": "class:InMemoryExperienceStore",
      "target": "func:InMemoryExperienceStore.get_metrics",
      "type": "contains",
      "label": "方法 get_metrics"
    },
    {
      "id": "edge:358ac0c2",
      "source": "file:src/agentkit/evolution/fitness.py",
      "target": "class:FitnessWeights",
      "type": "contains",
      "label": "定义类 FitnessWeights"
    },
    {
      "id": "edge:ff93d6bd",
      "source": "class:FitnessWeights",
      "target": "func:FitnessWeights.__post_init__",
      "type": "contains",
      "label": "方法 __post_init__"
    },
    {
      "id": "edge:0f1f3bc9",
      "source": "file:src/agentkit/evolution/fitness.py",
      "target": "class:MultiObjectiveFitness",
      "type": "contains",
      "label": "定义类 MultiObjectiveFitness"
    },
    {
      "id": "edge:df951aed",
      "source": "class:MultiObjectiveFitness",
      "target": "func:MultiObjectiveFitness.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c2f3234a",
      "source": "class:MultiObjectiveFitness",
      "target": "func:MultiObjectiveFitness.evaluate",
      "type": "contains",
      "label": "方法 evaluate"
    },
    {
      "id": "edge:02e5f6b8",
      "source": "class:MultiObjectiveFitness",
      "target": "func:MultiObjectiveFitness.weighted_score",
      "type": "contains",
      "label": "方法 weighted_score"
    },
    {
      "id": "edge:0c46b140",
      "source": "class:MultiObjectiveFitness",
      "target": "func:MultiObjectiveFitness.pareto_rank",
      "type": "contains",
      "label": "方法 pareto_rank"
    },
    {
      "id": "edge:cb9c89df",
      "source": "class:MultiObjectiveFitness",
      "target": "func:MultiObjectiveFitness.crowding_distance",
      "type": "contains",
      "label": "方法 crowding_distance"
    },
    {
      "id": "edge:de9c1527",
      "source": "file:src/agentkit/evolution/fitness.py",
      "target": "class:ExtendedStrategyConfig",
      "type": "contains",
      "label": "定义类 ExtendedStrategyConfig"
    },
    {
      "id": "edge:a70f904b",
      "source": "file:src/agentkit/evolution/fitness.py",
      "target": "class:ExtendedStrategyTuner",
      "type": "contains",
      "label": "定义类 ExtendedStrategyTuner"
    },
    {
      "id": "edge:71874e71",
      "source": "class:ExtendedStrategyTuner",
      "target": "func:ExtendedStrategyTuner.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:2643fb3e",
      "source": "class:ExtendedStrategyTuner",
      "target": "func:ExtendedStrategyTuner.record",
      "type": "contains",
      "label": "方法 record"
    },
    {
      "id": "edge:2a3a2f44",
      "source": "class:ExtendedStrategyTuner",
      "target": "func:ExtendedStrategyTuner.suggest",
      "type": "contains",
      "label": "方法 suggest"
    },
    {
      "id": "edge:81959972",
      "source": "class:ExtendedStrategyTuner",
      "target": "func:ExtendedStrategyTuner._optimize_param",
      "type": "contains",
      "label": "方法 _optimize_param"
    },
    {
      "id": "edge:cd950fc8",
      "source": "class:ExtendedStrategyTuner",
      "target": "func:ExtendedStrategyTuner._suggest_retrieval_mode",
      "type": "contains",
      "label": "方法 _suggest_retrieval_mode"
    },
    {
      "id": "edge:ff085dc5",
      "source": "class:ExtendedStrategyTuner",
      "target": "func:ExtendedStrategyTuner.history_size",
      "type": "contains",
      "label": "方法 history_size"
    },
    {
      "id": "edge:007ed4d5",
      "source": "file:src/agentkit/evolution/genetic.py",
      "target": "class:FitnessScore",
      "type": "contains",
      "label": "定义类 FitnessScore"
    },
    {
      "id": "edge:f9530b48",
      "source": "class:FitnessScore",
      "target": "func:FitnessScore.normalized",
      "type": "contains",
      "label": "方法 normalized"
    },
    {
      "id": "edge:a13b8de5",
      "source": "class:FitnessScore",
      "target": "func:FitnessScore.dominates",
      "type": "contains",
      "label": "方法 dominates"
    },
    {
      "id": "edge:7bfd9a00",
      "source": "file:src/agentkit/evolution/genetic.py",
      "target": "class:PromptChromosome",
      "type": "contains",
      "label": "定义类 PromptChromosome"
    },
    {
      "id": "edge:3d2e298f",
      "source": "class:PromptChromosome",
      "target": "func:PromptChromosome.to_module",
      "type": "contains",
      "label": "方法 to_module"
    },
    {
      "id": "edge:49aba3af",
      "source": "class:PromptChromosome",
      "target": "func:PromptChromosome.from_module",
      "type": "contains",
      "label": "方法 from_module"
    },
    {
      "id": "edge:e08e8753",
      "source": "file:src/agentkit/evolution/genetic.py",
      "target": "class:CrossoverOperator",
      "type": "contains",
      "label": "定义类 CrossoverOperator"
    },
    {
      "id": "edge:14a2b8b8",
      "source": "class:CrossoverOperator",
      "target": "func:CrossoverOperator.crossover",
      "type": "contains",
      "label": "方法 crossover"
    },
    {
      "id": "edge:24e538f0",
      "source": "class:CrossoverOperator",
      "target": "func:CrossoverOperator._crossover_text",
      "type": "contains",
      "label": "方法 _crossover_text"
    },
    {
      "id": "edge:8781a04e",
      "source": "class:CrossoverOperator",
      "target": "func:CrossoverOperator._crossover_demos",
      "type": "contains",
      "label": "方法 _crossover_demos"
    },
    {
      "id": "edge:91d69e3a",
      "source": "class:CrossoverOperator",
      "target": "func:CrossoverOperator._crossover_constraints",
      "type": "contains",
      "label": "方法 _crossover_constraints"
    },
    {
      "id": "edge:0a869198",
      "source": "file:src/agentkit/evolution/genetic.py",
      "target": "class:MutationOperator",
      "type": "contains",
      "label": "定义类 MutationOperator"
    },
    {
      "id": "edge:216ec69f",
      "source": "class:MutationOperator",
      "target": "func:MutationOperator.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:3ac0cc8e",
      "source": "class:MutationOperator",
      "target": "func:MutationOperator.mutate",
      "type": "contains",
      "label": "方法 mutate"
    },
    {
      "id": "edge:980cdbd4",
      "source": "class:MutationOperator",
      "target": "func:MutationOperator._mutate_instructions",
      "type": "contains",
      "label": "方法 _mutate_instructions"
    },
    {
      "id": "edge:26263810",
      "source": "class:MutationOperator",
      "target": "func:MutationOperator._mutate_demos",
      "type": "contains",
      "label": "方法 _mutate_demos"
    },
    {
      "id": "edge:d1de6a0a",
      "source": "class:MutationOperator",
      "target": "func:MutationOperator._mutate_constraints",
      "type": "contains",
      "label": "方法 _mutate_constraints"
    },
    {
      "id": "edge:273bd0ce",
      "source": "file:src/agentkit/evolution/genetic.py",
      "target": "class:GEPAPopulation",
      "type": "contains",
      "label": "定义类 GEPAPopulation"
    },
    {
      "id": "edge:5e8932e3",
      "source": "class:GEPAPopulation",
      "target": "func:GEPAPopulation.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:af622444",
      "source": "class:GEPAPopulation",
      "target": "func:GEPAPopulation.generation",
      "type": "contains",
      "label": "方法 generation"
    },
    {
      "id": "edge:de180c43",
      "source": "class:GEPAPopulation",
      "target": "func:GEPAPopulation.individuals",
      "type": "contains",
      "label": "方法 individuals"
    },
    {
      "id": "edge:2ddf2bf7",
      "source": "class:GEPAPopulation",
      "target": "func:GEPAPopulation.size",
      "type": "contains",
      "label": "方法 size"
    },
    {
      "id": "edge:be0ad6af",
      "source": "class:GEPAPopulation",
      "target": "func:GEPAPopulation.initialize",
      "type": "contains",
      "label": "方法 initialize"
    },
    {
      "id": "edge:9b3e7dcf",
      "source": "class:GEPAPopulation",
      "target": "func:GEPAPopulation.add",
      "type": "contains",
      "label": "方法 add"
    },
    {
      "id": "edge:a02c3d35",
      "source": "class:GEPAPopulation",
      "target": "func:GEPAPopulation.get_elite",
      "type": "contains",
      "label": "方法 get_elite"
    },
    {
      "id": "edge:a8fb1654",
      "source": "class:GEPAPopulation",
      "target": "func:GEPAPopulation.get_pareto_front",
      "type": "contains",
      "label": "方法 get_pareto_front"
    },
    {
      "id": "edge:1ca4110a",
      "source": "class:GEPAPopulation",
      "target": "func:GEPAPopulation.tournament_select",
      "type": "contains",
      "label": "方法 tournament_select"
    },
    {
      "id": "edge:0232928f",
      "source": "class:GEPAPopulation",
      "target": "func:GEPAPopulation.evolve",
      "type": "contains",
      "label": "方法 evolve"
    },
    {
      "id": "edge:f3f51c99",
      "source": "class:GEPAPopulation",
      "target": "func:GEPAPopulation.get_best",
      "type": "contains",
      "label": "方法 get_best"
    },
    {
      "id": "edge:7e700503",
      "source": "class:GEPAPopulation",
      "target": "func:GEPAPopulation.get_statistics",
      "type": "contains",
      "label": "方法 get_statistics"
    },
    {
      "id": "edge:0203a635",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "class:SoulEvolutionConfig",
      "type": "contains",
      "label": "定义类 SoulEvolutionConfig"
    },
    {
      "id": "edge:86880349",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "class:EvolutionLogEntry",
      "type": "contains",
      "label": "定义类 EvolutionLogEntry"
    },
    {
      "id": "edge:bbbe1062",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "class:EvolutionMixin",
      "type": "contains",
      "label": "定义类 EvolutionMixin"
    },
    {
      "id": "edge:bad9ebe4",
      "source": "class:EvolutionMixin",
      "target": "func:EvolutionMixin.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:cdd35064",
      "source": "class:EvolutionMixin",
      "target": "func:EvolutionMixin._create_reflector",
      "type": "contains",
      "label": "方法 _create_reflector"
    },
    {
      "id": "edge:ab995e27",
      "source": "class:EvolutionMixin",
      "target": "func:EvolutionMixin.evolve_after_task",
      "type": "contains",
      "label": "方法 evolve_after_task"
    },
    {
      "id": "edge:86886a5c",
      "source": "class:EvolutionMixin",
      "target": "func:EvolutionMixin._optimize_with_context",
      "type": "contains",
      "label": "方法 _optimize_with_context"
    },
    {
      "id": "edge:d1ca5807",
      "source": "class:EvolutionMixin",
      "target": "func:EvolutionMixin._run_ab_test",
      "type": "contains",
      "label": "方法 _run_ab_test"
    },
    {
      "id": "edge:bef80a77",
      "source": "class:EvolutionMixin",
      "target": "func:EvolutionMixin._run_strategy_tuning",
      "type": "contains",
      "label": "方法 _run_strategy_tuning"
    },
    {
      "id": "edge:77470dcc",
      "source": "class:EvolutionMixin",
      "target": "func:EvolutionMixin.get_evolution_history",
      "type": "contains",
      "label": "方法 get_evolution_history"
    },
    {
      "id": "edge:a943c7f0",
      "source": "class:EvolutionMixin",
      "target": "func:EvolutionMixin.set_current_module",
      "type": "contains",
      "label": "方法 set_current_module"
    },
    {
      "id": "edge:81228b2b",
      "source": "class:EvolutionMixin",
      "target": "func:EvolutionMixin._apply_change",
      "type": "contains",
      "label": "方法 _apply_change"
    },
    {
      "id": "edge:9fabcff2",
      "source": "class:EvolutionMixin",
      "target": "func:EvolutionMixin._rollback_change",
      "type": "contains",
      "label": "方法 _rollback_change"
    },
    {
      "id": "edge:46425897",
      "source": "class:EvolutionMixin",
      "target": "func:EvolutionMixin.record_reflection",
      "type": "contains",
      "label": "方法 record_reflection"
    },
    {
      "id": "edge:61705207",
      "source": "class:EvolutionMixin",
      "target": "func:EvolutionMixin.evolve_soul",
      "type": "contains",
      "label": "方法 evolve_soul"
    },
    {
      "id": "edge:c39aab24",
      "source": "file:src/agentkit/evolution/llm_reflector.py",
      "target": "class:LLMReflector",
      "type": "contains",
      "label": "定义类 LLMReflector"
    },
    {
      "id": "edge:44cde6d6",
      "source": "class:LLMReflector",
      "target": "func:LLMReflector.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:49f89e3c",
      "source": "class:LLMReflector",
      "target": "func:LLMReflector._sanitize_for_prompt",
      "type": "contains",
      "label": "方法 _sanitize_for_prompt"
    },
    {
      "id": "edge:aacdfd1d",
      "source": "class:LLMReflector",
      "target": "func:LLMReflector.reflect",
      "type": "contains",
      "label": "方法 reflect"
    },
    {
      "id": "edge:77572a05",
      "source": "class:LLMReflector",
      "target": "func:LLMReflector._build_reflection_prompt",
      "type": "contains",
      "label": "方法 _build_reflection_prompt"
    },
    {
      "id": "edge:03d561e6",
      "source": "class:LLMReflector",
      "target": "func:LLMReflector._parse_reflection_response",
      "type": "contains",
      "label": "方法 _parse_reflection_response"
    },
    {
      "id": "edge:efe2ef25",
      "source": "class:LLMReflector",
      "target": "func:LLMReflector._build_reflection_from_data",
      "type": "contains",
      "label": "方法 _build_reflection_from_data"
    },
    {
      "id": "edge:e094406b",
      "source": "file:src/agentkit/evolution/models.py",
      "target": "class:EvolutionEventModel",
      "type": "contains",
      "label": "定义类 EvolutionEventModel"
    },
    {
      "id": "edge:564b0995",
      "source": "file:src/agentkit/evolution/models.py",
      "target": "class:SkillVersionModel",
      "type": "contains",
      "label": "定义类 SkillVersionModel"
    },
    {
      "id": "edge:36acd46e",
      "source": "file:src/agentkit/evolution/models.py",
      "target": "class:ABTestResultModel",
      "type": "contains",
      "label": "定义类 ABTestResultModel"
    },
    {
      "id": "edge:2e9f8352",
      "source": "file:src/agentkit/evolution/path_optimizer.py",
      "target": "class:ExecutionPath",
      "type": "contains",
      "label": "定义类 ExecutionPath"
    },
    {
      "id": "edge:19e59a14",
      "source": "file:src/agentkit/evolution/path_optimizer.py",
      "target": "class:PathUpdateResult",
      "type": "contains",
      "label": "定义类 PathUpdateResult"
    },
    {
      "id": "edge:c0dcfae0",
      "source": "file:src/agentkit/evolution/path_optimizer.py",
      "target": "class:PathOptimizer",
      "type": "contains",
      "label": "定义类 PathOptimizer"
    },
    {
      "id": "edge:38128532",
      "source": "class:PathOptimizer",
      "target": "func:PathOptimizer.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:161f9f0c",
      "source": "class:PathOptimizer",
      "target": "func:PathOptimizer.get_recommended_path",
      "type": "contains",
      "label": "方法 get_recommended_path"
    },
    {
      "id": "edge:52db2b28",
      "source": "class:PathOptimizer",
      "target": "func:PathOptimizer.evaluate_and_update",
      "type": "contains",
      "label": "方法 evaluate_and_update"
    },
    {
      "id": "edge:e054b2ad",
      "source": "class:PathOptimizer",
      "target": "func:PathOptimizer._compare_and_decide",
      "type": "contains",
      "label": "方法 _compare_and_decide"
    },
    {
      "id": "edge:1a0598ac",
      "source": "class:PathOptimizer",
      "target": "func:PathOptimizer._apply_update",
      "type": "contains",
      "label": "方法 _apply_update"
    },
    {
      "id": "edge:87a96f22",
      "source": "class:PathOptimizer",
      "target": "func:PathOptimizer.get_pending_paths",
      "type": "contains",
      "label": "方法 get_pending_paths"
    },
    {
      "id": "edge:c951f653",
      "source": "file:src/agentkit/evolution/pg_store.py",
      "target": "class:PGEvolutionEventModel",
      "type": "contains",
      "label": "定义类 PGEvolutionEventModel"
    },
    {
      "id": "edge:708d2fc0",
      "source": "file:src/agentkit/evolution/pg_store.py",
      "target": "class:PGSkillVersionModel",
      "type": "contains",
      "label": "定义类 PGSkillVersionModel"
    },
    {
      "id": "edge:93f02797",
      "source": "file:src/agentkit/evolution/pg_store.py",
      "target": "class:PGABTestResultModel",
      "type": "contains",
      "label": "定义类 PGABTestResultModel"
    },
    {
      "id": "edge:f87d7eef",
      "source": "file:src/agentkit/evolution/pg_store.py",
      "target": "class:PostgreSQLEvolutionStore",
      "type": "contains",
      "label": "定义类 PostgreSQLEvolutionStore"
    },
    {
      "id": "edge:bfdce2f8",
      "source": "class:PostgreSQLEvolutionStore",
      "target": "func:PostgreSQLEvolutionStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:b067f95c",
      "source": "class:PostgreSQLEvolutionStore",
      "target": "func:PostgreSQLEvolutionStore._ensure_initialized",
      "type": "contains",
      "label": "方法 _ensure_initialized"
    },
    {
      "id": "edge:76713841",
      "source": "class:PostgreSQLEvolutionStore",
      "target": "func:PostgreSQLEvolutionStore.ensure_tables",
      "type": "contains",
      "label": "方法 ensure_tables"
    },
    {
      "id": "edge:e5cf3cb3",
      "source": "class:PostgreSQLEvolutionStore",
      "target": "func:PostgreSQLEvolutionStore.close",
      "type": "contains",
      "label": "方法 close"
    },
    {
      "id": "edge:3a455c67",
      "source": "class:PostgreSQLEvolutionStore",
      "target": "func:PostgreSQLEvolutionStore.__aenter__",
      "type": "contains",
      "label": "方法 __aenter__"
    },
    {
      "id": "edge:9d0fc366",
      "source": "class:PostgreSQLEvolutionStore",
      "target": "func:PostgreSQLEvolutionStore.__aexit__",
      "type": "contains",
      "label": "方法 __aexit__"
    },
    {
      "id": "edge:2245e354",
      "source": "class:PostgreSQLEvolutionStore",
      "target": "func:PostgreSQLEvolutionStore.record",
      "type": "contains",
      "label": "方法 record"
    },
    {
      "id": "edge:edf33a27",
      "source": "class:PostgreSQLEvolutionStore",
      "target": "func:PostgreSQLEvolutionStore.rollback",
      "type": "contains",
      "label": "方法 rollback"
    },
    {
      "id": "edge:f03cf840",
      "source": "class:PostgreSQLEvolutionStore",
      "target": "func:PostgreSQLEvolutionStore.list_events",
      "type": "contains",
      "label": "方法 list_events"
    },
    {
      "id": "edge:772e9bdb",
      "source": "class:PostgreSQLEvolutionStore",
      "target": "func:PostgreSQLEvolutionStore.record_skill_version",
      "type": "contains",
      "label": "方法 record_skill_version"
    },
    {
      "id": "edge:2e919248",
      "source": "class:PostgreSQLEvolutionStore",
      "target": "func:PostgreSQLEvolutionStore.list_skill_versions",
      "type": "contains",
      "label": "方法 list_skill_versions"
    },
    {
      "id": "edge:7166beb1",
      "source": "class:PostgreSQLEvolutionStore",
      "target": "func:PostgreSQLEvolutionStore.record_ab_test_result",
      "type": "contains",
      "label": "方法 record_ab_test_result"
    },
    {
      "id": "edge:433e10a4",
      "source": "class:PostgreSQLEvolutionStore",
      "target": "func:PostgreSQLEvolutionStore.get_ab_test_results",
      "type": "contains",
      "label": "方法 get_ab_test_results"
    },
    {
      "id": "edge:fc7bd14f",
      "source": "file:src/agentkit/evolution/pitfall_detector.py",
      "target": "class:WarningLevel",
      "type": "contains",
      "label": "定义类 WarningLevel"
    },
    {
      "id": "edge:2d82eca1",
      "source": "file:src/agentkit/evolution/pitfall_detector.py",
      "target": "class:PitfallWarning",
      "type": "contains",
      "label": "定义类 PitfallWarning"
    },
    {
      "id": "edge:5e254963",
      "source": "file:src/agentkit/evolution/pitfall_detector.py",
      "target": "class:ExperienceStoreProtocol",
      "type": "contains",
      "label": "定义类 ExperienceStoreProtocol"
    },
    {
      "id": "edge:16f88e89",
      "source": "class:ExperienceStoreProtocol",
      "target": "func:ExperienceStoreProtocol.search",
      "type": "contains",
      "label": "方法 search"
    },
    {
      "id": "edge:3fe887aa",
      "source": "file:src/agentkit/evolution/pitfall_detector.py",
      "target": "class:PitfallDetector",
      "type": "contains",
      "label": "定义类 PitfallDetector"
    },
    {
      "id": "edge:422ebe95",
      "source": "class:PitfallDetector",
      "target": "func:PitfallDetector.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:72c141e2",
      "source": "class:PitfallDetector",
      "target": "func:PitfallDetector.check_pitfalls",
      "type": "contains",
      "label": "方法 check_pitfalls"
    },
    {
      "id": "edge:ed788a2c",
      "source": "class:PitfallDetector",
      "target": "func:PitfallDetector._search_experiences",
      "type": "contains",
      "label": "方法 _search_experiences"
    },
    {
      "id": "edge:2f0151e6",
      "source": "class:PitfallDetector",
      "target": "func:PitfallDetector._extract_step_failure_stats",
      "type": "contains",
      "label": "方法 _extract_step_failure_stats"
    },
    {
      "id": "edge:245a233b",
      "source": "class:PitfallDetector",
      "target": "func:PitfallDetector._match_and_warn",
      "type": "contains",
      "label": "方法 _match_and_warn"
    },
    {
      "id": "edge:2579c21a",
      "source": "file:src/agentkit/evolution/pitfall_detector.py",
      "target": "class:_StepFailureStats",
      "type": "contains",
      "label": "定义类 _StepFailureStats"
    },
    {
      "id": "edge:6650d48f",
      "source": "file:src/agentkit/evolution/prompt_optimizer.py",
      "target": "class:Signature",
      "type": "contains",
      "label": "定义类 Signature"
    },
    {
      "id": "edge:5757316d",
      "source": "class:Signature",
      "target": "func:Signature.to_prompt_prefix",
      "type": "contains",
      "label": "方法 to_prompt_prefix"
    },
    {
      "id": "edge:9a7b49f1",
      "source": "file:src/agentkit/evolution/prompt_optimizer.py",
      "target": "class:Module",
      "type": "contains",
      "label": "定义类 Module"
    },
    {
      "id": "edge:228b97fa",
      "source": "class:Module",
      "target": "func:Module.render",
      "type": "contains",
      "label": "方法 render"
    },
    {
      "id": "edge:f203f9dc",
      "source": "file:src/agentkit/evolution/prompt_optimizer.py",
      "target": "class:BootstrapPromptOptimizer",
      "type": "contains",
      "label": "定义类 BootstrapPromptOptimizer"
    },
    {
      "id": "edge:d318318f",
      "source": "class:BootstrapPromptOptimizer",
      "target": "func:BootstrapPromptOptimizer.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:803ae253",
      "source": "class:BootstrapPromptOptimizer",
      "target": "func:BootstrapPromptOptimizer.add_example",
      "type": "contains",
      "label": "方法 add_example"
    },
    {
      "id": "edge:349ce75b",
      "source": "class:BootstrapPromptOptimizer",
      "target": "func:BootstrapPromptOptimizer.optimize",
      "type": "contains",
      "label": "方法 optimize"
    },
    {
      "id": "edge:d544f78b",
      "source": "class:BootstrapPromptOptimizer",
      "target": "func:BootstrapPromptOptimizer.example_count",
      "type": "contains",
      "label": "方法 example_count"
    },
    {
      "id": "edge:90979594",
      "source": "file:src/agentkit/evolution/prompt_optimizer.py",
      "target": "class:LLMPromptOptimizer",
      "type": "contains",
      "label": "定义类 LLMPromptOptimizer"
    },
    {
      "id": "edge:d828a577",
      "source": "class:LLMPromptOptimizer",
      "target": "func:LLMPromptOptimizer.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:7035363c",
      "source": "class:LLMPromptOptimizer",
      "target": "func:LLMPromptOptimizer.add_example",
      "type": "contains",
      "label": "方法 add_example"
    },
    {
      "id": "edge:edd94a38",
      "source": "class:LLMPromptOptimizer",
      "target": "func:LLMPromptOptimizer.optimize",
      "type": "contains",
      "label": "方法 optimize"
    },
    {
      "id": "edge:30804d57",
      "source": "class:LLMPromptOptimizer",
      "target": "func:LLMPromptOptimizer._llm_optimize_instruction",
      "type": "contains",
      "label": "方法 _llm_optimize_instruction"
    },
    {
      "id": "edge:57a4c964",
      "source": "class:LLMPromptOptimizer",
      "target": "func:LLMPromptOptimizer._build_optimization_prompt",
      "type": "contains",
      "label": "方法 _build_optimization_prompt"
    },
    {
      "id": "edge:c49d39ca",
      "source": "class:LLMPromptOptimizer",
      "target": "func:LLMPromptOptimizer.example_count",
      "type": "contains",
      "label": "方法 example_count"
    },
    {
      "id": "edge:0635e1f8",
      "source": "file:src/agentkit/evolution/reflector.py",
      "target": "class:Reflection",
      "type": "contains",
      "label": "定义类 Reflection"
    },
    {
      "id": "edge:1918748c",
      "source": "file:src/agentkit/evolution/reflector.py",
      "target": "class:RuleBasedReflector",
      "type": "contains",
      "label": "定义类 RuleBasedReflector"
    },
    {
      "id": "edge:e0eb31d6",
      "source": "class:RuleBasedReflector",
      "target": "func:RuleBasedReflector.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:d437b62c",
      "source": "class:RuleBasedReflector",
      "target": "func:RuleBasedReflector.reflect",
      "type": "contains",
      "label": "方法 reflect"
    },
    {
      "id": "edge:610d3095",
      "source": "class:RuleBasedReflector",
      "target": "func:RuleBasedReflector._score_quality",
      "type": "contains",
      "label": "方法 _score_quality"
    },
    {
      "id": "edge:e8f946e5",
      "source": "class:RuleBasedReflector",
      "target": "func:RuleBasedReflector._extract_patterns",
      "type": "contains",
      "label": "方法 _extract_patterns"
    },
    {
      "id": "edge:c27632cf",
      "source": "class:RuleBasedReflector",
      "target": "func:RuleBasedReflector._generate_insights",
      "type": "contains",
      "label": "方法 _generate_insights"
    },
    {
      "id": "edge:be818a3e",
      "source": "class:RuleBasedReflector",
      "target": "func:RuleBasedReflector._generate_suggestions",
      "type": "contains",
      "label": "方法 _generate_suggestions"
    },
    {
      "id": "edge:8cd18e22",
      "source": "file:src/agentkit/evolution/strategy_tuner.py",
      "target": "class:StrategyConfig",
      "type": "contains",
      "label": "定义类 StrategyConfig"
    },
    {
      "id": "edge:90bba490",
      "source": "file:src/agentkit/evolution/strategy_tuner.py",
      "target": "class:StrategyTuner",
      "type": "contains",
      "label": "定义类 StrategyTuner"
    },
    {
      "id": "edge:5a7f1551",
      "source": "class:StrategyTuner",
      "target": "func:StrategyTuner.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:1ab2ad6f",
      "source": "class:StrategyTuner",
      "target": "func:StrategyTuner.record",
      "type": "contains",
      "label": "方法 record"
    },
    {
      "id": "edge:4f865778",
      "source": "class:StrategyTuner",
      "target": "func:StrategyTuner.suggest",
      "type": "contains",
      "label": "方法 suggest"
    },
    {
      "id": "edge:0c8b2792",
      "source": "class:StrategyTuner",
      "target": "func:StrategyTuner._optimize_param_1d",
      "type": "contains",
      "label": "方法 _optimize_param_1d"
    },
    {
      "id": "edge:7521231f",
      "source": "class:StrategyTuner",
      "target": "func:StrategyTuner._clamp",
      "type": "contains",
      "label": "方法 _clamp"
    },
    {
      "id": "edge:80efba11",
      "source": "file:src/agentkit/llm/cache.py",
      "target": "class:CacheEntry",
      "type": "contains",
      "label": "定义类 CacheEntry"
    },
    {
      "id": "edge:3f556974",
      "source": "file:src/agentkit/llm/cache.py",
      "target": "class:CacheResult",
      "type": "contains",
      "label": "定义类 CacheResult"
    },
    {
      "id": "edge:57287b2a",
      "source": "file:src/agentkit/llm/cache.py",
      "target": "class:LLMCache",
      "type": "contains",
      "label": "定义类 LLMCache"
    },
    {
      "id": "edge:322801bc",
      "source": "class:LLMCache",
      "target": "func:LLMCache.get",
      "type": "contains",
      "label": "方法 get"
    },
    {
      "id": "edge:482f85eb",
      "source": "class:LLMCache",
      "target": "func:LLMCache.semantic_search",
      "type": "contains",
      "label": "方法 semantic_search"
    },
    {
      "id": "edge:5a0b2031",
      "source": "class:LLMCache",
      "target": "func:LLMCache.put",
      "type": "contains",
      "label": "方法 put"
    },
    {
      "id": "edge:c4dfd953",
      "source": "class:LLMCache",
      "target": "func:LLMCache.invalidate",
      "type": "contains",
      "label": "方法 invalidate"
    },
    {
      "id": "edge:e9d928db",
      "source": "class:LLMCache",
      "target": "func:LLMCache.stats",
      "type": "contains",
      "label": "方法 stats"
    },
    {
      "id": "edge:32828009",
      "source": "file:src/agentkit/llm/cache.py",
      "target": "class:InMemoryLLMCache",
      "type": "contains",
      "label": "定义类 InMemoryLLMCache"
    },
    {
      "id": "edge:ea149b86",
      "source": "class:InMemoryLLMCache",
      "target": "func:InMemoryLLMCache.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:9ed2d7ed",
      "source": "class:InMemoryLLMCache",
      "target": "func:InMemoryLLMCache.get",
      "type": "contains",
      "label": "方法 get"
    },
    {
      "id": "edge:5762494a",
      "source": "class:InMemoryLLMCache",
      "target": "func:InMemoryLLMCache.semantic_search",
      "type": "contains",
      "label": "方法 semantic_search"
    },
    {
      "id": "edge:c7016765",
      "source": "class:InMemoryLLMCache",
      "target": "func:InMemoryLLMCache.put",
      "type": "contains",
      "label": "方法 put"
    },
    {
      "id": "edge:79672ea4",
      "source": "class:InMemoryLLMCache",
      "target": "func:InMemoryLLMCache.invalidate",
      "type": "contains",
      "label": "方法 invalidate"
    },
    {
      "id": "edge:9095aa02",
      "source": "class:InMemoryLLMCache",
      "target": "func:InMemoryLLMCache.stats",
      "type": "contains",
      "label": "方法 stats"
    },
    {
      "id": "edge:03a2efbb",
      "source": "file:src/agentkit/llm/cache.py",
      "target": "class:RedisLLMCache",
      "type": "contains",
      "label": "定义类 RedisLLMCache"
    },
    {
      "id": "edge:f347bd13",
      "source": "class:RedisLLMCache",
      "target": "func:RedisLLMCache.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:3980942d",
      "source": "class:RedisLLMCache",
      "target": "func:RedisLLMCache._get_redis",
      "type": "contains",
      "label": "方法 _get_redis"
    },
    {
      "id": "edge:ca2c7b00",
      "source": "class:RedisLLMCache",
      "target": "func:RedisLLMCache.aclose",
      "type": "contains",
      "label": "方法 aclose"
    },
    {
      "id": "edge:b7ea28e7",
      "source": "class:RedisLLMCache",
      "target": "func:RedisLLMCache._degrade_to_fallback",
      "type": "contains",
      "label": "方法 _degrade_to_fallback"
    },
    {
      "id": "edge:e1e90966",
      "source": "class:RedisLLMCache",
      "target": "func:RedisLLMCache._try_recover",
      "type": "contains",
      "label": "方法 _try_recover"
    },
    {
      "id": "edge:2bef5163",
      "source": "class:RedisLLMCache",
      "target": "func:RedisLLMCache.get",
      "type": "contains",
      "label": "方法 get"
    },
    {
      "id": "edge:d71d0d00",
      "source": "class:RedisLLMCache",
      "target": "func:RedisLLMCache.semantic_search",
      "type": "contains",
      "label": "方法 semantic_search"
    },
    {
      "id": "edge:f67671bb",
      "source": "class:RedisLLMCache",
      "target": "func:RedisLLMCache.put",
      "type": "contains",
      "label": "方法 put"
    },
    {
      "id": "edge:d0bf2958",
      "source": "class:RedisLLMCache",
      "target": "func:RedisLLMCache.invalidate",
      "type": "contains",
      "label": "方法 invalidate"
    },
    {
      "id": "edge:5ff74ec8",
      "source": "class:RedisLLMCache",
      "target": "func:RedisLLMCache.stats",
      "type": "contains",
      "label": "方法 stats"
    },
    {
      "id": "edge:985e923a",
      "source": "file:src/agentkit/llm/config.py",
      "target": "class:CacheConfig",
      "type": "contains",
      "label": "定义类 CacheConfig"
    },
    {
      "id": "edge:b6adc449",
      "source": "class:CacheConfig",
      "target": "func:CacheConfig.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:1ad24830",
      "source": "file:src/agentkit/llm/config.py",
      "target": "class:ProviderConfig",
      "type": "contains",
      "label": "定义类 ProviderConfig"
    },
    {
      "id": "edge:3cfdba91",
      "source": "file:src/agentkit/llm/config.py",
      "target": "class:LLMConfig",
      "type": "contains",
      "label": "定义类 LLMConfig"
    },
    {
      "id": "edge:1735336c",
      "source": "class:LLMConfig",
      "target": "func:LLMConfig.from_yaml",
      "type": "contains",
      "label": "方法 from_yaml"
    },
    {
      "id": "edge:901403ab",
      "source": "class:LLMConfig",
      "target": "func:LLMConfig.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:3f618726",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "class:LLMGateway",
      "type": "contains",
      "label": "定义类 LLMGateway"
    },
    {
      "id": "edge:ed59a0d9",
      "source": "class:LLMGateway",
      "target": "func:LLMGateway.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:82385668",
      "source": "class:LLMGateway",
      "target": "func:LLMGateway._create_embedder",
      "type": "contains",
      "label": "方法 _create_embedder"
    },
    {
      "id": "edge:c3ffcf08",
      "source": "class:LLMGateway",
      "target": "func:LLMGateway.register_provider",
      "type": "contains",
      "label": "方法 register_provider"
    },
    {
      "id": "edge:86cccf8b",
      "source": "class:LLMGateway",
      "target": "func:LLMGateway.has_providers",
      "type": "contains",
      "label": "方法 has_providers"
    },
    {
      "id": "edge:dcc4361e",
      "source": "class:LLMGateway",
      "target": "func:LLMGateway.chat",
      "type": "contains",
      "label": "方法 chat"
    },
    {
      "id": "edge:10fc293c",
      "source": "class:LLMGateway",
      "target": "func:LLMGateway.chat_stream",
      "type": "contains",
      "label": "方法 chat_stream"
    },
    {
      "id": "edge:9e06e8f1",
      "source": "class:LLMGateway",
      "target": "func:LLMGateway._get_models_to_try",
      "type": "contains",
      "label": "方法 _get_models_to_try"
    },
    {
      "id": "edge:12815b5b",
      "source": "class:LLMGateway",
      "target": "func:LLMGateway._resolve_model_alias",
      "type": "contains",
      "label": "方法 _resolve_model_alias"
    },
    {
      "id": "edge:fa955650",
      "source": "class:LLMGateway",
      "target": "func:LLMGateway._resolve_model",
      "type": "contains",
      "label": "方法 _resolve_model"
    },
    {
      "id": "edge:ae3123f1",
      "source": "class:LLMGateway",
      "target": "func:LLMGateway._get_fallback_model",
      "type": "contains",
      "label": "方法 _get_fallback_model"
    },
    {
      "id": "edge:a1898907",
      "source": "class:LLMGateway",
      "target": "func:LLMGateway._calculate_cost",
      "type": "contains",
      "label": "方法 _calculate_cost"
    },
    {
      "id": "edge:73f6e053",
      "source": "class:LLMGateway",
      "target": "func:LLMGateway.get_usage",
      "type": "contains",
      "label": "方法 get_usage"
    },
    {
      "id": "edge:4e1f2599",
      "source": "file:src/agentkit/llm/protocol.py",
      "target": "class:TokenUsage",
      "type": "contains",
      "label": "定义类 TokenUsage"
    },
    {
      "id": "edge:45166399",
      "source": "class:TokenUsage",
      "target": "func:TokenUsage.total_tokens",
      "type": "contains",
      "label": "方法 total_tokens"
    },
    {
      "id": "edge:2daf7970",
      "source": "file:src/agentkit/llm/protocol.py",
      "target": "class:ToolCall",
      "type": "contains",
      "label": "定义类 ToolCall"
    },
    {
      "id": "edge:7818f2b3",
      "source": "file:src/agentkit/llm/protocol.py",
      "target": "class:LLMRequest",
      "type": "contains",
      "label": "定义类 LLMRequest"
    },
    {
      "id": "edge:afb2ddd8",
      "source": "class:LLMRequest",
      "target": "func:LLMRequest.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:b5697934",
      "source": "file:src/agentkit/llm/protocol.py",
      "target": "class:StreamChunk",
      "type": "contains",
      "label": "定义类 StreamChunk"
    },
    {
      "id": "edge:fd60959a",
      "source": "file:src/agentkit/llm/protocol.py",
      "target": "class:LLMResponse",
      "type": "contains",
      "label": "定义类 LLMResponse"
    },
    {
      "id": "edge:553daf0e",
      "source": "class:LLMResponse",
      "target": "func:LLMResponse.has_tool_calls",
      "type": "contains",
      "label": "方法 has_tool_calls"
    },
    {
      "id": "edge:fe6acfbb",
      "source": "file:src/agentkit/llm/protocol.py",
      "target": "class:LLMProvider",
      "type": "contains",
      "label": "定义类 LLMProvider"
    },
    {
      "id": "edge:e72a72f3",
      "source": "class:LLMProvider",
      "target": "func:LLMProvider.chat",
      "type": "contains",
      "label": "方法 chat"
    },
    {
      "id": "edge:6a717cb0",
      "source": "class:LLMProvider",
      "target": "func:LLMProvider.chat_stream",
      "type": "contains",
      "label": "方法 chat_stream"
    },
    {
      "id": "edge:081fa766",
      "source": "file:src/agentkit/llm/providers/anthropic.py",
      "target": "class:_AnthropicStreamContext",
      "type": "contains",
      "label": "定义类 _AnthropicStreamContext"
    },
    {
      "id": "edge:01cfe734",
      "source": "class:_AnthropicStreamContext",
      "target": "func:_AnthropicStreamContext.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c1e396d3",
      "source": "class:_AnthropicStreamContext",
      "target": "func:_AnthropicStreamContext.__aenter__",
      "type": "contains",
      "label": "方法 __aenter__"
    },
    {
      "id": "edge:9a781463",
      "source": "class:_AnthropicStreamContext",
      "target": "func:_AnthropicStreamContext.__aexit__",
      "type": "contains",
      "label": "方法 __aexit__"
    },
    {
      "id": "edge:c683d0ac",
      "source": "file:src/agentkit/llm/providers/anthropic.py",
      "target": "class:AnthropicProvider",
      "type": "contains",
      "label": "定义类 AnthropicProvider"
    },
    {
      "id": "edge:67907b5d",
      "source": "class:AnthropicProvider",
      "target": "class:LLMProvider",
      "type": "extends",
      "label": "继承 LLMProvider"
    },
    {
      "id": "edge:4cfab704",
      "source": "class:AnthropicProvider",
      "target": "func:AnthropicProvider.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:6047dfbc",
      "source": "class:AnthropicProvider",
      "target": "func:AnthropicProvider._get_client",
      "type": "contains",
      "label": "方法 _get_client"
    },
    {
      "id": "edge:54e9c342",
      "source": "class:AnthropicProvider",
      "target": "func:AnthropicProvider.close",
      "type": "contains",
      "label": "方法 close"
    },
    {
      "id": "edge:03acda39",
      "source": "class:AnthropicProvider",
      "target": "func:AnthropicProvider._build_headers",
      "type": "contains",
      "label": "方法 _build_headers"
    },
    {
      "id": "edge:36c31f57",
      "source": "class:AnthropicProvider",
      "target": "func:AnthropicProvider._convert_messages",
      "type": "contains",
      "label": "方法 _convert_messages"
    },
    {
      "id": "edge:85df16cd",
      "source": "class:AnthropicProvider",
      "target": "func:AnthropicProvider._convert_tools",
      "type": "contains",
      "label": "方法 _convert_tools"
    },
    {
      "id": "edge:c18a3a52",
      "source": "class:AnthropicProvider",
      "target": "func:AnthropicProvider._convert_tool_choice",
      "type": "contains",
      "label": "方法 _convert_tool_choice"
    },
    {
      "id": "edge:b192c50d",
      "source": "class:AnthropicProvider",
      "target": "func:AnthropicProvider._parse_response",
      "type": "contains",
      "label": "方法 _parse_response"
    },
    {
      "id": "edge:45edf1fa",
      "source": "class:AnthropicProvider",
      "target": "func:AnthropicProvider._handle_error",
      "type": "contains",
      "label": "方法 _handle_error"
    },
    {
      "id": "edge:dd08d22f",
      "source": "class:AnthropicProvider",
      "target": "func:AnthropicProvider.chat",
      "type": "contains",
      "label": "方法 chat"
    },
    {
      "id": "edge:4ae4e7f5",
      "source": "class:AnthropicProvider",
      "target": "func:AnthropicProvider._chat_impl",
      "type": "contains",
      "label": "方法 _chat_impl"
    },
    {
      "id": "edge:5eeb27e2",
      "source": "class:AnthropicProvider",
      "target": "func:AnthropicProvider.chat_stream",
      "type": "contains",
      "label": "方法 chat_stream"
    },
    {
      "id": "edge:1d5b75c5",
      "source": "class:AnthropicProvider",
      "target": "func:AnthropicProvider._open_stream",
      "type": "contains",
      "label": "方法 _open_stream"
    },
    {
      "id": "edge:de40f4e5",
      "source": "class:AnthropicProvider",
      "target": "func:AnthropicProvider._iterate_stream",
      "type": "contains",
      "label": "方法 _iterate_stream"
    },
    {
      "id": "edge:12a99626",
      "source": "class:AnthropicProvider",
      "target": "func:AnthropicProvider.get_model_info",
      "type": "contains",
      "label": "方法 get_model_info"
    },
    {
      "id": "edge:9dc32522",
      "source": "file:src/agentkit/llm/providers/doubao.py",
      "target": "class:DoubaoProvider",
      "type": "contains",
      "label": "定义类 DoubaoProvider"
    },
    {
      "id": "edge:d5e29a3c",
      "source": "class:DoubaoProvider",
      "target": "func:DoubaoProvider.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:e06d35bf",
      "source": "class:DoubaoProvider",
      "target": "func:DoubaoProvider.chat",
      "type": "contains",
      "label": "方法 chat"
    },
    {
      "id": "edge:4eecae9f",
      "source": "file:src/agentkit/llm/providers/gemini.py",
      "target": "class:_GeminiStreamContext",
      "type": "contains",
      "label": "定义类 _GeminiStreamContext"
    },
    {
      "id": "edge:972edfe6",
      "source": "class:_GeminiStreamContext",
      "target": "func:_GeminiStreamContext.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:73386a32",
      "source": "class:_GeminiStreamContext",
      "target": "func:_GeminiStreamContext.__aenter__",
      "type": "contains",
      "label": "方法 __aenter__"
    },
    {
      "id": "edge:8665b78f",
      "source": "class:_GeminiStreamContext",
      "target": "func:_GeminiStreamContext.__aexit__",
      "type": "contains",
      "label": "方法 __aexit__"
    },
    {
      "id": "edge:ef5c519b",
      "source": "file:src/agentkit/llm/providers/gemini.py",
      "target": "class:GeminiProvider",
      "type": "contains",
      "label": "定义类 GeminiProvider"
    },
    {
      "id": "edge:f06bccba",
      "source": "class:GeminiProvider",
      "target": "class:LLMProvider",
      "type": "extends",
      "label": "继承 LLMProvider"
    },
    {
      "id": "edge:2aa6eb30",
      "source": "class:GeminiProvider",
      "target": "func:GeminiProvider.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:4a0fb294",
      "source": "class:GeminiProvider",
      "target": "func:GeminiProvider._get_client",
      "type": "contains",
      "label": "方法 _get_client"
    },
    {
      "id": "edge:1c3688d7",
      "source": "class:GeminiProvider",
      "target": "func:GeminiProvider.close",
      "type": "contains",
      "label": "方法 close"
    },
    {
      "id": "edge:9712018c",
      "source": "class:GeminiProvider",
      "target": "func:GeminiProvider._convert_messages",
      "type": "contains",
      "label": "方法 _convert_messages"
    },
    {
      "id": "edge:32c7b2b5",
      "source": "class:GeminiProvider",
      "target": "func:GeminiProvider._convert_tools",
      "type": "contains",
      "label": "方法 _convert_tools"
    },
    {
      "id": "edge:222b6bc3",
      "source": "class:GeminiProvider",
      "target": "func:GeminiProvider._convert_tool_choice",
      "type": "contains",
      "label": "方法 _convert_tool_choice"
    },
    {
      "id": "edge:66feb239",
      "source": "class:GeminiProvider",
      "target": "func:GeminiProvider._parse_response",
      "type": "contains",
      "label": "方法 _parse_response"
    },
    {
      "id": "edge:05048e63",
      "source": "class:GeminiProvider",
      "target": "func:GeminiProvider._handle_error",
      "type": "contains",
      "label": "方法 _handle_error"
    },
    {
      "id": "edge:c10209b8",
      "source": "class:GeminiProvider",
      "target": "func:GeminiProvider.chat",
      "type": "contains",
      "label": "方法 chat"
    },
    {
      "id": "edge:708e6ef7",
      "source": "class:GeminiProvider",
      "target": "func:GeminiProvider._chat_impl",
      "type": "contains",
      "label": "方法 _chat_impl"
    },
    {
      "id": "edge:b62d4c8c",
      "source": "class:GeminiProvider",
      "target": "func:GeminiProvider.chat_stream",
      "type": "contains",
      "label": "方法 chat_stream"
    },
    {
      "id": "edge:38c9b569",
      "source": "class:GeminiProvider",
      "target": "func:GeminiProvider._open_stream",
      "type": "contains",
      "label": "方法 _open_stream"
    },
    {
      "id": "edge:ed0a7959",
      "source": "class:GeminiProvider",
      "target": "func:GeminiProvider._iterate_stream",
      "type": "contains",
      "label": "方法 _iterate_stream"
    },
    {
      "id": "edge:2840c7b6",
      "source": "class:GeminiProvider",
      "target": "func:GeminiProvider.get_model_info",
      "type": "contains",
      "label": "方法 get_model_info"
    },
    {
      "id": "edge:fe917270",
      "source": "file:src/agentkit/llm/providers/openai.py",
      "target": "class:_StreamContext",
      "type": "contains",
      "label": "定义类 _StreamContext"
    },
    {
      "id": "edge:6e1e8519",
      "source": "class:_StreamContext",
      "target": "func:_StreamContext.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:eddb70e8",
      "source": "class:_StreamContext",
      "target": "func:_StreamContext.__aenter__",
      "type": "contains",
      "label": "方法 __aenter__"
    },
    {
      "id": "edge:76d0b087",
      "source": "class:_StreamContext",
      "target": "func:_StreamContext.__aexit__",
      "type": "contains",
      "label": "方法 __aexit__"
    },
    {
      "id": "edge:14b7d6cf",
      "source": "file:src/agentkit/llm/providers/openai.py",
      "target": "class:OpenAICompatibleProvider",
      "type": "contains",
      "label": "定义类 OpenAICompatibleProvider"
    },
    {
      "id": "edge:a6a26d54",
      "source": "class:OpenAICompatibleProvider",
      "target": "class:LLMProvider",
      "type": "extends",
      "label": "继承 LLMProvider"
    },
    {
      "id": "edge:da4153bd",
      "source": "class:OpenAICompatibleProvider",
      "target": "func:OpenAICompatibleProvider.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:50cd1be5",
      "source": "class:OpenAICompatibleProvider",
      "target": "func:OpenAICompatibleProvider.close",
      "type": "contains",
      "label": "方法 close"
    },
    {
      "id": "edge:63c415e6",
      "source": "class:OpenAICompatibleProvider",
      "target": "func:OpenAICompatibleProvider.chat",
      "type": "contains",
      "label": "方法 chat"
    },
    {
      "id": "edge:d0705494",
      "source": "class:OpenAICompatibleProvider",
      "target": "func:OpenAICompatibleProvider._chat_impl",
      "type": "contains",
      "label": "方法 _chat_impl"
    },
    {
      "id": "edge:02050dec",
      "source": "class:OpenAICompatibleProvider",
      "target": "func:OpenAICompatibleProvider.chat_stream",
      "type": "contains",
      "label": "方法 chat_stream"
    },
    {
      "id": "edge:8932423e",
      "source": "class:OpenAICompatibleProvider",
      "target": "func:OpenAICompatibleProvider._open_stream",
      "type": "contains",
      "label": "方法 _open_stream"
    },
    {
      "id": "edge:1ad063d1",
      "source": "class:OpenAICompatibleProvider",
      "target": "func:OpenAICompatibleProvider._iterate_stream",
      "type": "contains",
      "label": "方法 _iterate_stream"
    },
    {
      "id": "edge:2d51c13b",
      "source": "file:src/agentkit/llm/providers/tracker.py",
      "target": "class:UsageTracker",
      "type": "contains",
      "label": "定义类 UsageTracker"
    },
    {
      "id": "edge:f7646cb1",
      "source": "class:UsageTracker",
      "target": "func:UsageTracker.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:d2bcd1b8",
      "source": "class:UsageTracker",
      "target": "func:UsageTracker.record",
      "type": "contains",
      "label": "方法 record"
    },
    {
      "id": "edge:62bc8cfc",
      "source": "class:UsageTracker",
      "target": "func:UsageTracker.get_usage",
      "type": "contains",
      "label": "方法 get_usage"
    },
    {
      "id": "edge:0a6887df",
      "source": "file:src/agentkit/llm/providers/usage_store.py",
      "target": "class:UsageRecord",
      "type": "contains",
      "label": "定义类 UsageRecord"
    },
    {
      "id": "edge:5bb20c5e",
      "source": "class:UsageRecord",
      "target": "func:UsageRecord.__post_init__",
      "type": "contains",
      "label": "方法 __post_init__"
    },
    {
      "id": "edge:0ab6cc99",
      "source": "file:src/agentkit/llm/providers/usage_store.py",
      "target": "class:UsageBucket",
      "type": "contains",
      "label": "定义类 UsageBucket"
    },
    {
      "id": "edge:fa235dec",
      "source": "file:src/agentkit/llm/providers/usage_store.py",
      "target": "class:UsageSummary",
      "type": "contains",
      "label": "定义类 UsageSummary"
    },
    {
      "id": "edge:85f9f38d",
      "source": "file:src/agentkit/llm/providers/usage_store.py",
      "target": "class:UsageStore",
      "type": "contains",
      "label": "定义类 UsageStore"
    },
    {
      "id": "edge:e35b4310",
      "source": "class:UsageStore",
      "target": "func:UsageStore.record",
      "type": "contains",
      "label": "方法 record"
    },
    {
      "id": "edge:ed54925f",
      "source": "class:UsageStore",
      "target": "func:UsageStore.get_usage",
      "type": "contains",
      "label": "方法 get_usage"
    },
    {
      "id": "edge:f5d28b35",
      "source": "file:src/agentkit/llm/providers/usage_store.py",
      "target": "class:InMemoryUsageStore",
      "type": "contains",
      "label": "定义类 InMemoryUsageStore"
    },
    {
      "id": "edge:8629389a",
      "source": "class:InMemoryUsageStore",
      "target": "func:InMemoryUsageStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:a66e174d",
      "source": "class:InMemoryUsageStore",
      "target": "func:InMemoryUsageStore.record",
      "type": "contains",
      "label": "方法 record"
    },
    {
      "id": "edge:5c036638",
      "source": "class:InMemoryUsageStore",
      "target": "func:InMemoryUsageStore.get_usage",
      "type": "contains",
      "label": "方法 get_usage"
    },
    {
      "id": "edge:14f3298c",
      "source": "file:src/agentkit/llm/providers/usage_store.py",
      "target": "class:RedisUsageStore",
      "type": "contains",
      "label": "定义类 RedisUsageStore"
    },
    {
      "id": "edge:066236a6",
      "source": "class:RedisUsageStore",
      "target": "func:RedisUsageStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:dcd3270b",
      "source": "class:RedisUsageStore",
      "target": "func:RedisUsageStore._get_redis",
      "type": "contains",
      "label": "方法 _get_redis"
    },
    {
      "id": "edge:aae19ec6",
      "source": "class:RedisUsageStore",
      "target": "func:RedisUsageStore._get_sync_redis",
      "type": "contains",
      "label": "方法 _get_sync_redis"
    },
    {
      "id": "edge:b416f2a8",
      "source": "class:RedisUsageStore",
      "target": "func:RedisUsageStore.aclose",
      "type": "contains",
      "label": "方法 aclose"
    },
    {
      "id": "edge:dce86918",
      "source": "class:RedisUsageStore",
      "target": "func:RedisUsageStore._degrade_to_fallback",
      "type": "contains",
      "label": "方法 _degrade_to_fallback"
    },
    {
      "id": "edge:b03b9084",
      "source": "class:RedisUsageStore",
      "target": "func:RedisUsageStore._today_key",
      "type": "contains",
      "label": "方法 _today_key"
    },
    {
      "id": "edge:e5fd9019",
      "source": "class:RedisUsageStore",
      "target": "func:RedisUsageStore.record",
      "type": "contains",
      "label": "方法 record"
    },
    {
      "id": "edge:4ea73f31",
      "source": "class:RedisUsageStore",
      "target": "func:RedisUsageStore.get_usage",
      "type": "contains",
      "label": "方法 get_usage"
    },
    {
      "id": "edge:2e48d644",
      "source": "file:src/agentkit/llm/providers/wenxin.py",
      "target": "class:WenxinProvider",
      "type": "contains",
      "label": "定义类 WenxinProvider"
    },
    {
      "id": "edge:d8d6e72a",
      "source": "class:WenxinProvider",
      "target": "class:OpenAICompatibleProvider",
      "type": "extends",
      "label": "继承 OpenAICompatibleProvider"
    },
    {
      "id": "edge:01b52755",
      "source": "class:WenxinProvider",
      "target": "func:WenxinProvider.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:7678693b",
      "source": "class:WenxinProvider",
      "target": "func:WenxinProvider.chat",
      "type": "contains",
      "label": "方法 chat"
    },
    {
      "id": "edge:624fe37c",
      "source": "class:WenxinProvider",
      "target": "func:WenxinProvider._ensure_access_token",
      "type": "contains",
      "label": "方法 _ensure_access_token"
    },
    {
      "id": "edge:4d83a749",
      "source": "file:src/agentkit/llm/providers/yuanbao.py",
      "target": "class:YuanbaoProvider",
      "type": "contains",
      "label": "定义类 YuanbaoProvider"
    },
    {
      "id": "edge:55dc7a3a",
      "source": "class:YuanbaoProvider",
      "target": "class:OpenAICompatibleProvider",
      "type": "extends",
      "label": "继承 OpenAICompatibleProvider"
    },
    {
      "id": "edge:6ff22622",
      "source": "class:YuanbaoProvider",
      "target": "func:YuanbaoProvider.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:8963c781",
      "source": "class:YuanbaoProvider",
      "target": "func:YuanbaoProvider.chat",
      "type": "contains",
      "label": "方法 chat"
    },
    {
      "id": "edge:e6223435",
      "source": "file:src/agentkit/llm/retry.py",
      "target": "class:RetryConfig",
      "type": "contains",
      "label": "定义类 RetryConfig"
    },
    {
      "id": "edge:368cf560",
      "source": "file:src/agentkit/llm/retry.py",
      "target": "class:CircuitState",
      "type": "contains",
      "label": "定义类 CircuitState"
    },
    {
      "id": "edge:96a5f137",
      "source": "file:src/agentkit/llm/retry.py",
      "target": "class:CircuitBreakerConfig",
      "type": "contains",
      "label": "定义类 CircuitBreakerConfig"
    },
    {
      "id": "edge:1b4e01ac",
      "source": "file:src/agentkit/llm/retry.py",
      "target": "class:CircuitOpenError",
      "type": "contains",
      "label": "定义类 CircuitOpenError"
    },
    {
      "id": "edge:0b8edbf2",
      "source": "class:CircuitOpenError",
      "target": "class:LLMProviderError",
      "type": "extends",
      "label": "继承 LLMProviderError"
    },
    {
      "id": "edge:50d58fa2",
      "source": "class:CircuitOpenError",
      "target": "func:CircuitOpenError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:06615bcc",
      "source": "file:src/agentkit/llm/retry.py",
      "target": "class:RetryPolicy",
      "type": "contains",
      "label": "定义类 RetryPolicy"
    },
    {
      "id": "edge:87dfb976",
      "source": "class:RetryPolicy",
      "target": "func:RetryPolicy.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:8178edbf",
      "source": "class:RetryPolicy",
      "target": "func:RetryPolicy.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:09e69d76",
      "source": "file:src/agentkit/llm/retry.py",
      "target": "class:CircuitBreaker",
      "type": "contains",
      "label": "定义类 CircuitBreaker"
    },
    {
      "id": "edge:50d93b3f",
      "source": "class:CircuitBreaker",
      "target": "func:CircuitBreaker.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:ec2d6e06",
      "source": "class:CircuitBreaker",
      "target": "func:CircuitBreaker.state",
      "type": "contains",
      "label": "方法 state"
    },
    {
      "id": "edge:0cf0de6e",
      "source": "class:CircuitBreaker",
      "target": "func:CircuitBreaker._on_success",
      "type": "contains",
      "label": "方法 _on_success"
    },
    {
      "id": "edge:443c79c7",
      "source": "class:CircuitBreaker",
      "target": "func:CircuitBreaker._on_failure",
      "type": "contains",
      "label": "方法 _on_failure"
    },
    {
      "id": "edge:b75ea705",
      "source": "class:CircuitBreaker",
      "target": "func:CircuitBreaker.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:9b4fd133",
      "source": "file:src/agentkit/marketplace/auction.py",
      "target": "class:Bid",
      "type": "contains",
      "label": "定义类 Bid"
    },
    {
      "id": "edge:ee2165f8",
      "source": "class:Bid",
      "target": "func:Bid.__post_init__",
      "type": "contains",
      "label": "方法 __post_init__"
    },
    {
      "id": "edge:7cc9b677",
      "source": "file:src/agentkit/marketplace/auction.py",
      "target": "class:AuctionResult",
      "type": "contains",
      "label": "定义类 AuctionResult"
    },
    {
      "id": "edge:64ce015a",
      "source": "file:src/agentkit/marketplace/auction.py",
      "target": "class:AuctionHouse",
      "type": "contains",
      "label": "定义类 AuctionHouse"
    },
    {
      "id": "edge:3fb06e69",
      "source": "class:AuctionHouse",
      "target": "func:AuctionHouse.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:bd03344d",
      "source": "class:AuctionHouse",
      "target": "func:AuctionHouse.run_auction",
      "type": "contains",
      "label": "方法 run_auction"
    },
    {
      "id": "edge:f57c16fd",
      "source": "class:AuctionHouse",
      "target": "func:AuctionHouse.score_bid",
      "type": "contains",
      "label": "方法 score_bid"
    },
    {
      "id": "edge:b8fe9e35",
      "source": "class:AuctionHouse",
      "target": "func:AuctionHouse.filter_by_capabilities",
      "type": "contains",
      "label": "方法 filter_by_capabilities"
    },
    {
      "id": "edge:dc648286",
      "source": "class:AuctionHouse",
      "target": "func:AuctionHouse.run_vickrey_auction",
      "type": "contains",
      "label": "方法 run_vickrey_auction"
    },
    {
      "id": "edge:c355c37b",
      "source": "file:src/agentkit/marketplace/wealth.py",
      "target": "class:WealthTracker",
      "type": "contains",
      "label": "定义类 WealthTracker"
    },
    {
      "id": "edge:941cc8c7",
      "source": "class:WealthTracker",
      "target": "func:WealthTracker.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:b68377e4",
      "source": "class:WealthTracker",
      "target": "func:WealthTracker.get_wealth",
      "type": "contains",
      "label": "方法 get_wealth"
    },
    {
      "id": "edge:5d2d1bc8",
      "source": "class:WealthTracker",
      "target": "func:WealthTracker.reward",
      "type": "contains",
      "label": "方法 reward"
    },
    {
      "id": "edge:0a9487a1",
      "source": "class:WealthTracker",
      "target": "func:WealthTracker.penalize",
      "type": "contains",
      "label": "方法 penalize"
    },
    {
      "id": "edge:41629123",
      "source": "class:WealthTracker",
      "target": "func:WealthTracker.is_bankrupt",
      "type": "contains",
      "label": "方法 is_bankrupt"
    },
    {
      "id": "edge:b58561f8",
      "source": "class:WealthTracker",
      "target": "func:WealthTracker.reset",
      "type": "contains",
      "label": "方法 reset"
    },
    {
      "id": "edge:f85a6262",
      "source": "class:WealthTracker",
      "target": "func:WealthTracker.get_rankings",
      "type": "contains",
      "label": "方法 get_rankings"
    },
    {
      "id": "edge:2546cfe4",
      "source": "class:WealthTracker",
      "target": "func:WealthTracker.get_wealth_factor",
      "type": "contains",
      "label": "方法 get_wealth_factor"
    },
    {
      "id": "edge:aa33691a",
      "source": "file:src/agentkit/mcp/client.py",
      "target": "class:MCPClient",
      "type": "contains",
      "label": "定义类 MCPClient"
    },
    {
      "id": "edge:8d3bd9f4",
      "source": "class:MCPClient",
      "target": "func:MCPClient.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:51bc9763",
      "source": "class:MCPClient",
      "target": "func:MCPClient.from_transport",
      "type": "contains",
      "label": "方法 from_transport"
    },
    {
      "id": "edge:2be49345",
      "source": "class:MCPClient",
      "target": "func:MCPClient.list_tools",
      "type": "contains",
      "label": "方法 list_tools"
    },
    {
      "id": "edge:30648371",
      "source": "class:MCPClient",
      "target": "func:MCPClient.call_tool",
      "type": "contains",
      "label": "方法 call_tool"
    },
    {
      "id": "edge:dc3cbd64",
      "source": "class:MCPClient",
      "target": "func:MCPClient.as_tool",
      "type": "contains",
      "label": "方法 as_tool"
    },
    {
      "id": "edge:b4ebefb4",
      "source": "file:src/agentkit/mcp/client.py",
      "target": "class:MCPTool",
      "type": "contains",
      "label": "定义类 MCPTool"
    },
    {
      "id": "edge:a50bf2e3",
      "source": "class:MCPTool",
      "target": "func:MCPTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c6ffb26b",
      "source": "class:MCPTool",
      "target": "func:MCPTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:86a864d6",
      "source": "file:src/agentkit/mcp/manager.py",
      "target": "class:MCPManager",
      "type": "contains",
      "label": "定义类 MCPManager"
    },
    {
      "id": "edge:0f71774d",
      "source": "class:MCPManager",
      "target": "func:MCPManager.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:50f7a535",
      "source": "class:MCPManager",
      "target": "func:MCPManager.start_all",
      "type": "contains",
      "label": "方法 start_all"
    },
    {
      "id": "edge:d4e11e5e",
      "source": "class:MCPManager",
      "target": "func:MCPManager._start_server_safe",
      "type": "contains",
      "label": "方法 _start_server_safe"
    },
    {
      "id": "edge:8b85fb47",
      "source": "class:MCPManager",
      "target": "func:MCPManager._start_server",
      "type": "contains",
      "label": "方法 _start_server"
    },
    {
      "id": "edge:cbb92f2c",
      "source": "class:MCPManager",
      "target": "func:MCPManager.stop_all",
      "type": "contains",
      "label": "方法 stop_all"
    },
    {
      "id": "edge:5d89e8a5",
      "source": "class:MCPManager",
      "target": "func:MCPManager.is_available",
      "type": "contains",
      "label": "方法 is_available"
    },
    {
      "id": "edge:79c4db49",
      "source": "class:MCPManager",
      "target": "func:MCPManager.get_server_tools",
      "type": "contains",
      "label": "方法 get_server_tools"
    },
    {
      "id": "edge:d6639034",
      "source": "class:MCPManager",
      "target": "func:MCPManager.list_all_tools",
      "type": "contains",
      "label": "方法 list_all_tools"
    },
    {
      "id": "edge:cdb0c99e",
      "source": "class:MCPManager",
      "target": "func:MCPManager.get_tool_registry",
      "type": "contains",
      "label": "方法 get_tool_registry"
    },
    {
      "id": "edge:0e4a56d6",
      "source": "file:src/agentkit/mcp/server.py",
      "target": "class:MCPServer",
      "type": "contains",
      "label": "定义类 MCPServer"
    },
    {
      "id": "edge:b35275f5",
      "source": "class:MCPServer",
      "target": "func:MCPServer.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:20471de5",
      "source": "class:MCPServer",
      "target": "func:MCPServer._create_app",
      "type": "contains",
      "label": "方法 _create_app"
    },
    {
      "id": "edge:6a61c447",
      "source": "class:MCPServer",
      "target": "func:MCPServer.start",
      "type": "contains",
      "label": "方法 start"
    },
    {
      "id": "edge:6bbe3188",
      "source": "class:MCPServer",
      "target": "func:MCPServer.get_app",
      "type": "contains",
      "label": "方法 get_app"
    },
    {
      "id": "edge:719818e7",
      "source": "file:src/agentkit/mcp/transport.py",
      "target": "class:TransportError",
      "type": "contains",
      "label": "定义类 TransportError"
    },
    {
      "id": "edge:2face597",
      "source": "class:TransportError",
      "target": "func:TransportError.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:e799999d",
      "source": "file:src/agentkit/mcp/transport.py",
      "target": "class:Transport",
      "type": "contains",
      "label": "定义类 Transport"
    },
    {
      "id": "edge:d4933053",
      "source": "class:Transport",
      "target": "func:Transport.connect",
      "type": "contains",
      "label": "方法 connect"
    },
    {
      "id": "edge:8498f3ce",
      "source": "class:Transport",
      "target": "func:Transport.disconnect",
      "type": "contains",
      "label": "方法 disconnect"
    },
    {
      "id": "edge:9322bc8f",
      "source": "class:Transport",
      "target": "func:Transport.send_request",
      "type": "contains",
      "label": "方法 send_request"
    },
    {
      "id": "edge:d4a0982a",
      "source": "class:Transport",
      "target": "func:Transport.receive_response",
      "type": "contains",
      "label": "方法 receive_response"
    },
    {
      "id": "edge:fc46d58b",
      "source": "file:src/agentkit/mcp/transport.py",
      "target": "class:HTTPTransport",
      "type": "contains",
      "label": "定义类 HTTPTransport"
    },
    {
      "id": "edge:99287e2c",
      "source": "class:HTTPTransport",
      "target": "class:Transport",
      "type": "extends",
      "label": "继承 Transport"
    },
    {
      "id": "edge:4bcbf7eb",
      "source": "class:HTTPTransport",
      "target": "func:HTTPTransport.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:ddef3fb5",
      "source": "class:HTTPTransport",
      "target": "func:HTTPTransport.is_connected",
      "type": "contains",
      "label": "方法 is_connected"
    },
    {
      "id": "edge:f96a6960",
      "source": "class:HTTPTransport",
      "target": "func:HTTPTransport.connect",
      "type": "contains",
      "label": "方法 connect"
    },
    {
      "id": "edge:3cbec513",
      "source": "class:HTTPTransport",
      "target": "func:HTTPTransport.disconnect",
      "type": "contains",
      "label": "方法 disconnect"
    },
    {
      "id": "edge:ff8e595c",
      "source": "class:HTTPTransport",
      "target": "func:HTTPTransport._next_request_id",
      "type": "contains",
      "label": "方法 _next_request_id"
    },
    {
      "id": "edge:efb76951",
      "source": "class:HTTPTransport",
      "target": "func:HTTPTransport.send_request",
      "type": "contains",
      "label": "方法 send_request"
    },
    {
      "id": "edge:6cc27e45",
      "source": "class:HTTPTransport",
      "target": "func:HTTPTransport.receive_response",
      "type": "contains",
      "label": "方法 receive_response"
    },
    {
      "id": "edge:210df89c",
      "source": "file:src/agentkit/mcp/transport.py",
      "target": "class:SSETransport",
      "type": "contains",
      "label": "定义类 SSETransport"
    },
    {
      "id": "edge:07236a3f",
      "source": "class:SSETransport",
      "target": "class:Transport",
      "type": "extends",
      "label": "继承 Transport"
    },
    {
      "id": "edge:dbe6c4e9",
      "source": "class:SSETransport",
      "target": "func:SSETransport.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:cf7a8aa6",
      "source": "class:SSETransport",
      "target": "func:SSETransport.is_connected",
      "type": "contains",
      "label": "方法 is_connected"
    },
    {
      "id": "edge:8c0f7715",
      "source": "class:SSETransport",
      "target": "func:SSETransport.connect",
      "type": "contains",
      "label": "方法 connect"
    },
    {
      "id": "edge:07361e46",
      "source": "class:SSETransport",
      "target": "func:SSETransport.disconnect",
      "type": "contains",
      "label": "方法 disconnect"
    },
    {
      "id": "edge:a3455a7a",
      "source": "class:SSETransport",
      "target": "func:SSETransport._listen_sse",
      "type": "contains",
      "label": "方法 _listen_sse"
    },
    {
      "id": "edge:93923b17",
      "source": "class:SSETransport",
      "target": "func:SSETransport._next_request_id",
      "type": "contains",
      "label": "方法 _next_request_id"
    },
    {
      "id": "edge:6d357828",
      "source": "class:SSETransport",
      "target": "func:SSETransport.send_request",
      "type": "contains",
      "label": "方法 send_request"
    },
    {
      "id": "edge:164c37e9",
      "source": "class:SSETransport",
      "target": "func:SSETransport.receive_response",
      "type": "contains",
      "label": "方法 receive_response"
    },
    {
      "id": "edge:71d9075b",
      "source": "file:src/agentkit/mcp/transport.py",
      "target": "class:StdioTransport",
      "type": "contains",
      "label": "定义类 StdioTransport"
    },
    {
      "id": "edge:1916569b",
      "source": "class:StdioTransport",
      "target": "class:Transport",
      "type": "extends",
      "label": "继承 Transport"
    },
    {
      "id": "edge:aa39ca6b",
      "source": "class:StdioTransport",
      "target": "func:StdioTransport.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:ee66347f",
      "source": "class:StdioTransport",
      "target": "func:StdioTransport.is_connected",
      "type": "contains",
      "label": "方法 is_connected"
    },
    {
      "id": "edge:5eca648f",
      "source": "class:StdioTransport",
      "target": "func:StdioTransport._next_request_id",
      "type": "contains",
      "label": "方法 _next_request_id"
    },
    {
      "id": "edge:2e2857f8",
      "source": "class:StdioTransport",
      "target": "func:StdioTransport.connect",
      "type": "contains",
      "label": "方法 connect"
    },
    {
      "id": "edge:5d6e2e64",
      "source": "class:StdioTransport",
      "target": "func:StdioTransport.disconnect",
      "type": "contains",
      "label": "方法 disconnect"
    },
    {
      "id": "edge:363a5a8d",
      "source": "class:StdioTransport",
      "target": "func:StdioTransport._cleanup",
      "type": "contains",
      "label": "方法 _cleanup"
    },
    {
      "id": "edge:3621378c",
      "source": "class:StdioTransport",
      "target": "func:StdioTransport.send_request",
      "type": "contains",
      "label": "方法 send_request"
    },
    {
      "id": "edge:21900dbc",
      "source": "class:StdioTransport",
      "target": "func:StdioTransport._send_request_internal",
      "type": "contains",
      "label": "方法 _send_request_internal"
    },
    {
      "id": "edge:19cd8cff",
      "source": "class:StdioTransport",
      "target": "func:StdioTransport._send_notification",
      "type": "contains",
      "label": "方法 _send_notification"
    },
    {
      "id": "edge:b31f24a2",
      "source": "class:StdioTransport",
      "target": "func:StdioTransport._write_message",
      "type": "contains",
      "label": "方法 _write_message"
    },
    {
      "id": "edge:b7a450f8",
      "source": "class:StdioTransport",
      "target": "func:StdioTransport.receive_response",
      "type": "contains",
      "label": "方法 receive_response"
    },
    {
      "id": "edge:6f5d6a4b",
      "source": "class:StdioTransport",
      "target": "func:StdioTransport._read_stdout",
      "type": "contains",
      "label": "方法 _read_stdout"
    },
    {
      "id": "edge:ebeecdeb",
      "source": "class:StdioTransport",
      "target": "func:StdioTransport._read_stderr",
      "type": "contains",
      "label": "方法 _read_stderr"
    },
    {
      "id": "edge:4bca0174",
      "source": "file:src/agentkit/memory/adapters/base.py",
      "target": "class:KBAdapter",
      "type": "contains",
      "label": "定义类 KBAdapter"
    },
    {
      "id": "edge:aa5142a4",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:eda70294",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter.source_id",
      "type": "contains",
      "label": "方法 source_id"
    },
    {
      "id": "edge:01a0f07a",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter.source_name",
      "type": "contains",
      "label": "方法 source_name"
    },
    {
      "id": "edge:8eab35fc",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter.source_type",
      "type": "contains",
      "label": "方法 source_type"
    },
    {
      "id": "edge:0166bafe",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter._get_client",
      "type": "contains",
      "label": "方法 _get_client"
    },
    {
      "id": "edge:a35ba713",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter._make_client",
      "type": "contains",
      "label": "方法 _make_client"
    },
    {
      "id": "edge:d1529d14",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter.ingest",
      "type": "contains",
      "label": "方法 ingest"
    },
    {
      "id": "edge:7a4675fe",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter._ingest_one",
      "type": "contains",
      "label": "方法 _ingest_one"
    },
    {
      "id": "edge:509258fb",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter.query",
      "type": "contains",
      "label": "方法 query"
    },
    {
      "id": "edge:16b2548b",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter.delete_by_id",
      "type": "contains",
      "label": "方法 delete_by_id"
    },
    {
      "id": "edge:78755d20",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter.list_sources",
      "type": "contains",
      "label": "方法 list_sources"
    },
    {
      "id": "edge:4bdc7293",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:49b5071b",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter.search",
      "type": "contains",
      "label": "方法 search"
    },
    {
      "id": "edge:85a0e4d2",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter.get_document",
      "type": "contains",
      "label": "方法 get_document"
    },
    {
      "id": "edge:0e1aafe1",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter.authenticate",
      "type": "contains",
      "label": "方法 authenticate"
    },
    {
      "id": "edge:991df898",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter.close",
      "type": "contains",
      "label": "方法 close"
    },
    {
      "id": "edge:6e230beb",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter.__aenter__",
      "type": "contains",
      "label": "方法 __aenter__"
    },
    {
      "id": "edge:c3a06dc8",
      "source": "class:KBAdapter",
      "target": "func:KBAdapter.__aexit__",
      "type": "contains",
      "label": "方法 __aexit__"
    },
    {
      "id": "edge:7335bae3",
      "source": "file:src/agentkit/memory/adapters/confluence.py",
      "target": "class:ConfluenceAdapter",
      "type": "contains",
      "label": "定义类 ConfluenceAdapter"
    },
    {
      "id": "edge:ed752828",
      "source": "class:ConfluenceAdapter",
      "target": "class:KBAdapter",
      "type": "extends",
      "label": "继承 KBAdapter"
    },
    {
      "id": "edge:2bc34791",
      "source": "class:ConfluenceAdapter",
      "target": "func:ConfluenceAdapter.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:4d514b1a",
      "source": "class:ConfluenceAdapter",
      "target": "func:ConfluenceAdapter._make_client",
      "type": "contains",
      "label": "方法 _make_client"
    },
    {
      "id": "edge:ea7336cc",
      "source": "class:ConfluenceAdapter",
      "target": "func:ConfluenceAdapter.authenticate",
      "type": "contains",
      "label": "方法 authenticate"
    },
    {
      "id": "edge:609bdb02",
      "source": "class:ConfluenceAdapter",
      "target": "func:ConfluenceAdapter.search",
      "type": "contains",
      "label": "方法 search"
    },
    {
      "id": "edge:614a1d94",
      "source": "class:ConfluenceAdapter",
      "target": "func:ConfluenceAdapter.get_document",
      "type": "contains",
      "label": "方法 get_document"
    },
    {
      "id": "edge:6bb6d242",
      "source": "class:ConfluenceAdapter",
      "target": "func:ConfluenceAdapter.list_sources",
      "type": "contains",
      "label": "方法 list_sources"
    },
    {
      "id": "edge:3d4ea839",
      "source": "class:ConfluenceAdapter",
      "target": "func:ConfluenceAdapter.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:7c25ce2a",
      "source": "file:src/agentkit/memory/adapters/feishu.py",
      "target": "class:FeishuKBAdapter",
      "type": "contains",
      "label": "定义类 FeishuKBAdapter"
    },
    {
      "id": "edge:6191c579",
      "source": "class:FeishuKBAdapter",
      "target": "class:KBAdapter",
      "type": "extends",
      "label": "继承 KBAdapter"
    },
    {
      "id": "edge:2d48caa5",
      "source": "class:FeishuKBAdapter",
      "target": "func:FeishuKBAdapter.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:5fdaa05e",
      "source": "class:FeishuKBAdapter",
      "target": "func:FeishuKBAdapter._make_client",
      "type": "contains",
      "label": "方法 _make_client"
    },
    {
      "id": "edge:92cdb67a",
      "source": "class:FeishuKBAdapter",
      "target": "func:FeishuKBAdapter._get_access_token",
      "type": "contains",
      "label": "方法 _get_access_token"
    },
    {
      "id": "edge:dfc6a630",
      "source": "class:FeishuKBAdapter",
      "target": "func:FeishuKBAdapter.authenticate",
      "type": "contains",
      "label": "方法 authenticate"
    },
    {
      "id": "edge:7d7472fc",
      "source": "class:FeishuKBAdapter",
      "target": "func:FeishuKBAdapter.search",
      "type": "contains",
      "label": "方法 search"
    },
    {
      "id": "edge:65f8f80b",
      "source": "class:FeishuKBAdapter",
      "target": "func:FeishuKBAdapter.get_document",
      "type": "contains",
      "label": "方法 get_document"
    },
    {
      "id": "edge:e4199f24",
      "source": "class:FeishuKBAdapter",
      "target": "func:FeishuKBAdapter.list_sources",
      "type": "contains",
      "label": "方法 list_sources"
    },
    {
      "id": "edge:a15f4df5",
      "source": "class:FeishuKBAdapter",
      "target": "func:FeishuKBAdapter.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:451c3176",
      "source": "file:src/agentkit/memory/adapters/generic_http.py",
      "target": "class:GenericHTTPAdapter",
      "type": "contains",
      "label": "定义类 GenericHTTPAdapter"
    },
    {
      "id": "edge:01310f18",
      "source": "class:GenericHTTPAdapter",
      "target": "class:KBAdapter",
      "type": "extends",
      "label": "继承 KBAdapter"
    },
    {
      "id": "edge:13e2d586",
      "source": "class:GenericHTTPAdapter",
      "target": "func:GenericHTTPAdapter.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:1fc8b9a4",
      "source": "class:GenericHTTPAdapter",
      "target": "func:GenericHTTPAdapter._make_client",
      "type": "contains",
      "label": "方法 _make_client"
    },
    {
      "id": "edge:ae56c317",
      "source": "class:GenericHTTPAdapter",
      "target": "func:GenericHTTPAdapter.search",
      "type": "contains",
      "label": "方法 search"
    },
    {
      "id": "edge:49b61445",
      "source": "class:GenericHTTPAdapter",
      "target": "func:GenericHTTPAdapter.ingest",
      "type": "contains",
      "label": "方法 ingest"
    },
    {
      "id": "edge:8c99f74e",
      "source": "class:GenericHTTPAdapter",
      "target": "func:GenericHTTPAdapter.delete_by_id",
      "type": "contains",
      "label": "方法 delete_by_id"
    },
    {
      "id": "edge:319d7b63",
      "source": "class:GenericHTTPAdapter",
      "target": "func:GenericHTTPAdapter.get_document",
      "type": "contains",
      "label": "方法 get_document"
    },
    {
      "id": "edge:e5117714",
      "source": "class:GenericHTTPAdapter",
      "target": "func:GenericHTTPAdapter.list_sources",
      "type": "contains",
      "label": "方法 list_sources"
    },
    {
      "id": "edge:7d014459",
      "source": "class:GenericHTTPAdapter",
      "target": "func:GenericHTTPAdapter.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:89075387",
      "source": "class:GenericHTTPAdapter",
      "target": "func:GenericHTTPAdapter.authenticate",
      "type": "contains",
      "label": "方法 authenticate"
    },
    {
      "id": "edge:4e662085",
      "source": "file:src/agentkit/memory/base.py",
      "target": "class:MemoryItem",
      "type": "contains",
      "label": "定义类 MemoryItem"
    },
    {
      "id": "edge:eb72f882",
      "source": "class:MemoryItem",
      "target": "func:MemoryItem.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:4265e9e0",
      "source": "file:src/agentkit/memory/base.py",
      "target": "class:Memory",
      "type": "contains",
      "label": "定义类 Memory"
    },
    {
      "id": "edge:f70d36bc",
      "source": "class:Memory",
      "target": "func:Memory.store",
      "type": "contains",
      "label": "方法 store"
    },
    {
      "id": "edge:34c7bf0b",
      "source": "class:Memory",
      "target": "func:Memory.retrieve",
      "type": "contains",
      "label": "方法 retrieve"
    },
    {
      "id": "edge:476e94fd",
      "source": "class:Memory",
      "target": "func:Memory.search",
      "type": "contains",
      "label": "方法 search"
    },
    {
      "id": "edge:b2352b20",
      "source": "class:Memory",
      "target": "func:Memory.delete",
      "type": "contains",
      "label": "方法 delete"
    },
    {
      "id": "edge:df218bf5",
      "source": "class:Memory",
      "target": "func:Memory.store_batch",
      "type": "contains",
      "label": "方法 store_batch"
    },
    {
      "id": "edge:00767fde",
      "source": "class:Memory",
      "target": "func:Memory.get_context",
      "type": "contains",
      "label": "方法 get_context"
    },
    {
      "id": "edge:72d838fa",
      "source": "file:src/agentkit/memory/chunking.py",
      "target": "class:Chunk",
      "type": "contains",
      "label": "定义类 Chunk"
    },
    {
      "id": "edge:ce7d606d",
      "source": "class:Chunk",
      "target": "func:Chunk.__post_init__",
      "type": "contains",
      "label": "方法 __post_init__"
    },
    {
      "id": "edge:4372754e",
      "source": "class:Chunk",
      "target": "func:Chunk.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:71d4d631",
      "source": "file:src/agentkit/memory/chunking.py",
      "target": "class:TextChunker",
      "type": "contains",
      "label": "定义类 TextChunker"
    },
    {
      "id": "edge:9ae94882",
      "source": "class:TextChunker",
      "target": "func:TextChunker.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:79b83c42",
      "source": "class:TextChunker",
      "target": "func:TextChunker.chunk",
      "type": "contains",
      "label": "方法 chunk"
    },
    {
      "id": "edge:b63ecb62",
      "source": "class:TextChunker",
      "target": "func:TextChunker._split_by_separator",
      "type": "contains",
      "label": "方法 _split_by_separator"
    },
    {
      "id": "edge:88bbbbcc",
      "source": "class:TextChunker",
      "target": "func:TextChunker._merge_and_split",
      "type": "contains",
      "label": "方法 _merge_and_split"
    },
    {
      "id": "edge:725ecb6c",
      "source": "class:TextChunker",
      "target": "func:TextChunker._split_large_segment",
      "type": "contains",
      "label": "方法 _split_large_segment"
    },
    {
      "id": "edge:d59cddef",
      "source": "class:TextChunker",
      "target": "func:TextChunker._get_overlap_segments",
      "type": "contains",
      "label": "方法 _get_overlap_segments"
    },
    {
      "id": "edge:5ca52cf2",
      "source": "file:src/agentkit/memory/chunking.py",
      "target": "class:StructuralChunker",
      "type": "contains",
      "label": "定义类 StructuralChunker"
    },
    {
      "id": "edge:a957eb43",
      "source": "class:StructuralChunker",
      "target": "func:StructuralChunker.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:04a17b5a",
      "source": "class:StructuralChunker",
      "target": "func:StructuralChunker.chunk",
      "type": "contains",
      "label": "方法 chunk"
    },
    {
      "id": "edge:ad10484c",
      "source": "class:StructuralChunker",
      "target": "func:StructuralChunker._split_by_headings",
      "type": "contains",
      "label": "方法 _split_by_headings"
    },
    {
      "id": "edge:9feeb838",
      "source": "file:src/agentkit/memory/contextual_retrieval.py",
      "target": "class:ContextualChunk",
      "type": "contains",
      "label": "定义类 ContextualChunk"
    },
    {
      "id": "edge:f80cf84b",
      "source": "class:ContextualChunk",
      "target": "func:ContextualChunk.content",
      "type": "contains",
      "label": "方法 content"
    },
    {
      "id": "edge:3a6e63ef",
      "source": "file:src/agentkit/memory/contextual_retrieval.py",
      "target": "class:ContextualChunker",
      "type": "contains",
      "label": "定义类 ContextualChunker"
    },
    {
      "id": "edge:5b7b24dc",
      "source": "class:ContextualChunker",
      "target": "func:ContextualChunker.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:8fc2f66a",
      "source": "class:ContextualChunker",
      "target": "func:ContextualChunker.enhance_chunks",
      "type": "contains",
      "label": "方法 enhance_chunks"
    },
    {
      "id": "edge:76aba7e7",
      "source": "class:ContextualChunker",
      "target": "func:ContextualChunker._process_batch",
      "type": "contains",
      "label": "方法 _process_batch"
    },
    {
      "id": "edge:5b41b589",
      "source": "class:ContextualChunker",
      "target": "func:ContextualChunker._generate_context",
      "type": "contains",
      "label": "方法 _generate_context"
    },
    {
      "id": "edge:97d65827",
      "source": "class:ContextualChunker",
      "target": "func:ContextualChunker._make_cache_key",
      "type": "contains",
      "label": "方法 _make_cache_key"
    },
    {
      "id": "edge:331e3127",
      "source": "class:ContextualChunker",
      "target": "func:ContextualChunker.clear_cache",
      "type": "contains",
      "label": "方法 clear_cache"
    },
    {
      "id": "edge:c9a0e957",
      "source": "file:src/agentkit/memory/document_loader.py",
      "target": "class:Document",
      "type": "contains",
      "label": "定义类 Document"
    },
    {
      "id": "edge:c67fcf28",
      "source": "class:Document",
      "target": "func:Document.__post_init__",
      "type": "contains",
      "label": "方法 __post_init__"
    },
    {
      "id": "edge:c587cff9",
      "source": "class:Document",
      "target": "func:Document.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:bd524424",
      "source": "file:src/agentkit/memory/document_loader.py",
      "target": "class:DocumentLoader",
      "type": "contains",
      "label": "定义类 DocumentLoader"
    },
    {
      "id": "edge:6d82a777",
      "source": "class:DocumentLoader",
      "target": "func:DocumentLoader.load",
      "type": "contains",
      "label": "方法 load"
    },
    {
      "id": "edge:980f15cd",
      "source": "class:DocumentLoader",
      "target": "func:DocumentLoader.load_bytes",
      "type": "contains",
      "label": "方法 load_bytes"
    },
    {
      "id": "edge:559347ee",
      "source": "class:DocumentLoader",
      "target": "func:DocumentLoader._parse_pdf",
      "type": "contains",
      "label": "方法 _parse_pdf"
    },
    {
      "id": "edge:56130b41",
      "source": "class:DocumentLoader",
      "target": "func:DocumentLoader._parse_docx",
      "type": "contains",
      "label": "方法 _parse_docx"
    },
    {
      "id": "edge:accf8869",
      "source": "class:DocumentLoader",
      "target": "func:DocumentLoader._parse_markdown",
      "type": "contains",
      "label": "方法 _parse_markdown"
    },
    {
      "id": "edge:3adb4799",
      "source": "class:DocumentLoader",
      "target": "func:DocumentLoader._parse_html",
      "type": "contains",
      "label": "方法 _parse_html"
    },
    {
      "id": "edge:5890c112",
      "source": "class:DocumentLoader",
      "target": "func:DocumentLoader._parse_text",
      "type": "contains",
      "label": "方法 _parse_text"
    },
    {
      "id": "edge:581e43c8",
      "source": "file:src/agentkit/memory/embedder.py",
      "target": "class:EmbeddingCache",
      "type": "contains",
      "label": "定义类 EmbeddingCache"
    },
    {
      "id": "edge:4eb033c0",
      "source": "class:EmbeddingCache",
      "target": "func:EmbeddingCache.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:6c4ff6e7",
      "source": "class:EmbeddingCache",
      "target": "func:EmbeddingCache._make_key",
      "type": "contains",
      "label": "方法 _make_key"
    },
    {
      "id": "edge:541c9363",
      "source": "class:EmbeddingCache",
      "target": "func:EmbeddingCache.get",
      "type": "contains",
      "label": "方法 get"
    },
    {
      "id": "edge:3b938da9",
      "source": "class:EmbeddingCache",
      "target": "func:EmbeddingCache.put",
      "type": "contains",
      "label": "方法 put"
    },
    {
      "id": "edge:9971cc2e",
      "source": "class:EmbeddingCache",
      "target": "func:EmbeddingCache.clear",
      "type": "contains",
      "label": "方法 clear"
    },
    {
      "id": "edge:db121b32",
      "source": "file:src/agentkit/memory/embedder.py",
      "target": "class:Embedder",
      "type": "contains",
      "label": "定义类 Embedder"
    },
    {
      "id": "edge:6a3056b1",
      "source": "class:Embedder",
      "target": "func:Embedder.embed",
      "type": "contains",
      "label": "方法 embed"
    },
    {
      "id": "edge:5eebb195",
      "source": "class:Embedder",
      "target": "func:Embedder.get_dimension",
      "type": "contains",
      "label": "方法 get_dimension"
    },
    {
      "id": "edge:60963ece",
      "source": "file:src/agentkit/memory/embedder.py",
      "target": "class:OpenAIEmbedder",
      "type": "contains",
      "label": "定义类 OpenAIEmbedder"
    },
    {
      "id": "edge:0cca3bed",
      "source": "class:OpenAIEmbedder",
      "target": "class:Embedder",
      "type": "extends",
      "label": "继承 Embedder"
    },
    {
      "id": "edge:3d034912",
      "source": "class:OpenAIEmbedder",
      "target": "func:OpenAIEmbedder.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c684de8c",
      "source": "class:OpenAIEmbedder",
      "target": "func:OpenAIEmbedder._get_client",
      "type": "contains",
      "label": "方法 _get_client"
    },
    {
      "id": "edge:49c6624c",
      "source": "class:OpenAIEmbedder",
      "target": "func:OpenAIEmbedder.aclose",
      "type": "contains",
      "label": "方法 aclose"
    },
    {
      "id": "edge:5a0e533a",
      "source": "class:OpenAIEmbedder",
      "target": "func:OpenAIEmbedder.__aenter__",
      "type": "contains",
      "label": "方法 __aenter__"
    },
    {
      "id": "edge:ff7099ae",
      "source": "class:OpenAIEmbedder",
      "target": "func:OpenAIEmbedder.__aexit__",
      "type": "contains",
      "label": "方法 __aexit__"
    },
    {
      "id": "edge:35222a46",
      "source": "class:OpenAIEmbedder",
      "target": "func:OpenAIEmbedder.embed",
      "type": "contains",
      "label": "方法 embed"
    },
    {
      "id": "edge:b9afd67a",
      "source": "class:OpenAIEmbedder",
      "target": "func:OpenAIEmbedder.get_dimension",
      "type": "contains",
      "label": "方法 get_dimension"
    },
    {
      "id": "edge:7334db68",
      "source": "file:src/agentkit/memory/embedder.py",
      "target": "class:MockEmbedder",
      "type": "contains",
      "label": "定义类 MockEmbedder"
    },
    {
      "id": "edge:d8116f8b",
      "source": "class:MockEmbedder",
      "target": "class:Embedder",
      "type": "extends",
      "label": "继承 Embedder"
    },
    {
      "id": "edge:4247f5e8",
      "source": "class:MockEmbedder",
      "target": "func:MockEmbedder.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:293b50f7",
      "source": "class:MockEmbedder",
      "target": "func:MockEmbedder.embed",
      "type": "contains",
      "label": "方法 embed"
    },
    {
      "id": "edge:61da9c37",
      "source": "class:MockEmbedder",
      "target": "func:MockEmbedder.get_dimension",
      "type": "contains",
      "label": "方法 get_dimension"
    },
    {
      "id": "edge:0f4667ab",
      "source": "file:src/agentkit/memory/episodic.py",
      "target": "class:EpisodicMemory",
      "type": "contains",
      "label": "定义类 EpisodicMemory"
    },
    {
      "id": "edge:54df694b",
      "source": "class:EpisodicMemory",
      "target": "class:Memory",
      "type": "extends",
      "label": "继承 Memory"
    },
    {
      "id": "edge:f2d7b403",
      "source": "class:EpisodicMemory",
      "target": "func:EpisodicMemory.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:f4323d7e",
      "source": "class:EpisodicMemory",
      "target": "func:EpisodicMemory.store",
      "type": "contains",
      "label": "方法 store"
    },
    {
      "id": "edge:99c5dc84",
      "source": "class:EpisodicMemory",
      "target": "func:EpisodicMemory.retrieve",
      "type": "contains",
      "label": "方法 retrieve"
    },
    {
      "id": "edge:36b9fa1a",
      "source": "class:EpisodicMemory",
      "target": "func:EpisodicMemory._retrieve_pgvector",
      "type": "contains",
      "label": "方法 _retrieve_pgvector"
    },
    {
      "id": "edge:54af0d2b",
      "source": "class:EpisodicMemory",
      "target": "func:EpisodicMemory._retrieve_client_side",
      "type": "contains",
      "label": "方法 _retrieve_client_side"
    },
    {
      "id": "edge:dac091fb",
      "source": "class:EpisodicMemory",
      "target": "func:EpisodicMemory.search",
      "type": "contains",
      "label": "方法 search"
    },
    {
      "id": "edge:28973b67",
      "source": "class:EpisodicMemory",
      "target": "func:EpisodicMemory._search_pgvector",
      "type": "contains",
      "label": "方法 _search_pgvector"
    },
    {
      "id": "edge:0689602a",
      "source": "class:EpisodicMemory",
      "target": "func:EpisodicMemory._search_client_side",
      "type": "contains",
      "label": "方法 _search_client_side"
    },
    {
      "id": "edge:543559f5",
      "source": "class:EpisodicMemory",
      "target": "func:EpisodicMemory.delete",
      "type": "contains",
      "label": "方法 delete"
    },
    {
      "id": "edge:a288b86e",
      "source": "file:src/agentkit/memory/http_rag.py",
      "target": "class:HttpRAGService",
      "type": "contains",
      "label": "定义类 HttpRAGService"
    },
    {
      "id": "edge:378a5704",
      "source": "class:HttpRAGService",
      "target": "func:HttpRAGService.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:5f65d3db",
      "source": "class:HttpRAGService",
      "target": "func:HttpRAGService._get_client",
      "type": "contains",
      "label": "方法 _get_client"
    },
    {
      "id": "edge:9094d84c",
      "source": "class:HttpRAGService",
      "target": "func:HttpRAGService.search",
      "type": "contains",
      "label": "方法 search"
    },
    {
      "id": "edge:0a939f9a",
      "source": "class:HttpRAGService",
      "target": "func:HttpRAGService.enhanced_search",
      "type": "contains",
      "label": "方法 enhanced_search"
    },
    {
      "id": "edge:8f74a791",
      "source": "class:HttpRAGService",
      "target": "func:HttpRAGService.ingest",
      "type": "contains",
      "label": "方法 ingest"
    },
    {
      "id": "edge:a87a450b",
      "source": "class:HttpRAGService",
      "target": "func:HttpRAGService.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:bedc9184",
      "source": "class:HttpRAGService",
      "target": "func:HttpRAGService.close",
      "type": "contains",
      "label": "方法 close"
    },
    {
      "id": "edge:cd8e57d8",
      "source": "class:HttpRAGService",
      "target": "func:HttpRAGService.__aenter__",
      "type": "contains",
      "label": "方法 __aenter__"
    },
    {
      "id": "edge:747c5de1",
      "source": "class:HttpRAGService",
      "target": "func:HttpRAGService.__aexit__",
      "type": "contains",
      "label": "方法 __aexit__"
    },
    {
      "id": "edge:9ac82688",
      "source": "file:src/agentkit/memory/knowledge_base.py",
      "target": "class:Document",
      "type": "contains",
      "label": "定义类 Document"
    },
    {
      "id": "edge:8b69d5ac",
      "source": "file:src/agentkit/memory/knowledge_base.py",
      "target": "class:QueryResult",
      "type": "contains",
      "label": "定义类 QueryResult"
    },
    {
      "id": "edge:9a5e8271",
      "source": "file:src/agentkit/memory/knowledge_base.py",
      "target": "class:SourceInfo",
      "type": "contains",
      "label": "定义类 SourceInfo"
    },
    {
      "id": "edge:cb7530ff",
      "source": "file:src/agentkit/memory/knowledge_base.py",
      "target": "class:KnowledgeBase",
      "type": "contains",
      "label": "定义类 KnowledgeBase"
    },
    {
      "id": "edge:6d314cec",
      "source": "class:KnowledgeBase",
      "target": "func:KnowledgeBase.ingest",
      "type": "contains",
      "label": "方法 ingest"
    },
    {
      "id": "edge:9705cb73",
      "source": "class:KnowledgeBase",
      "target": "func:KnowledgeBase.query",
      "type": "contains",
      "label": "方法 query"
    },
    {
      "id": "edge:14d61b19",
      "source": "class:KnowledgeBase",
      "target": "func:KnowledgeBase.delete_by_id",
      "type": "contains",
      "label": "方法 delete_by_id"
    },
    {
      "id": "edge:8e788b4a",
      "source": "class:KnowledgeBase",
      "target": "func:KnowledgeBase.list_sources",
      "type": "contains",
      "label": "方法 list_sources"
    },
    {
      "id": "edge:250f3255",
      "source": "class:KnowledgeBase",
      "target": "func:KnowledgeBase.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:9f458392",
      "source": "file:src/agentkit/memory/local_rag.py",
      "target": "class:LocalRAGService",
      "type": "contains",
      "label": "定义类 LocalRAGService"
    },
    {
      "id": "edge:8c3287f8",
      "source": "class:LocalRAGService",
      "target": "func:LocalRAGService.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:1aa2bd5b",
      "source": "class:LocalRAGService",
      "target": "func:LocalRAGService.ingest",
      "type": "contains",
      "label": "方法 ingest"
    },
    {
      "id": "edge:29fce419",
      "source": "class:LocalRAGService",
      "target": "func:LocalRAGService.query",
      "type": "contains",
      "label": "方法 query"
    },
    {
      "id": "edge:c22b00e2",
      "source": "class:LocalRAGService",
      "target": "func:LocalRAGService.delete_by_id",
      "type": "contains",
      "label": "方法 delete_by_id"
    },
    {
      "id": "edge:9908e447",
      "source": "class:LocalRAGService",
      "target": "func:LocalRAGService.list_sources",
      "type": "contains",
      "label": "方法 list_sources"
    },
    {
      "id": "edge:8927cda5",
      "source": "class:LocalRAGService",
      "target": "func:LocalRAGService.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:31bfbc36",
      "source": "class:LocalRAGService",
      "target": "func:LocalRAGService._chunk_document",
      "type": "contains",
      "label": "方法 _chunk_document"
    },
    {
      "id": "edge:b352ac4e",
      "source": "class:LocalRAGService",
      "target": "func:LocalRAGService._store_chunks",
      "type": "contains",
      "label": "方法 _store_chunks"
    },
    {
      "id": "edge:0d6c5387",
      "source": "class:LocalRAGService",
      "target": "func:LocalRAGService._query_pgvector",
      "type": "contains",
      "label": "方法 _query_pgvector"
    },
    {
      "id": "edge:61ae1523",
      "source": "class:LocalRAGService",
      "target": "func:LocalRAGService._query_client_side",
      "type": "contains",
      "label": "方法 _query_client_side"
    },
    {
      "id": "edge:1b88c026",
      "source": "file:src/agentkit/memory/local_rag.py",
      "target": "class:InMemoryLocalRAGService",
      "type": "contains",
      "label": "定义类 InMemoryLocalRAGService"
    },
    {
      "id": "edge:55423356",
      "source": "class:InMemoryLocalRAGService",
      "target": "func:InMemoryLocalRAGService.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:b4197ae5",
      "source": "class:InMemoryLocalRAGService",
      "target": "func:InMemoryLocalRAGService.ingest",
      "type": "contains",
      "label": "方法 ingest"
    },
    {
      "id": "edge:a6a0ce92",
      "source": "class:InMemoryLocalRAGService",
      "target": "func:InMemoryLocalRAGService.query",
      "type": "contains",
      "label": "方法 query"
    },
    {
      "id": "edge:f7bffbc9",
      "source": "class:InMemoryLocalRAGService",
      "target": "func:InMemoryLocalRAGService.delete_by_id",
      "type": "contains",
      "label": "方法 delete_by_id"
    },
    {
      "id": "edge:2a26aca0",
      "source": "class:InMemoryLocalRAGService",
      "target": "func:InMemoryLocalRAGService.list_sources",
      "type": "contains",
      "label": "方法 list_sources"
    },
    {
      "id": "edge:672f980e",
      "source": "class:InMemoryLocalRAGService",
      "target": "func:InMemoryLocalRAGService.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:2f8c1111",
      "source": "class:InMemoryLocalRAGService",
      "target": "func:InMemoryLocalRAGService._chunk_document",
      "type": "contains",
      "label": "方法 _chunk_document"
    },
    {
      "id": "edge:eba90f60",
      "source": "file:src/agentkit/memory/models.py",
      "target": "class:EpisodeModel",
      "type": "contains",
      "label": "定义类 EpisodeModel"
    },
    {
      "id": "edge:d1d75f81",
      "source": "file:src/agentkit/memory/multi_source_retriever.py",
      "target": "class:MultiSourceRetriever",
      "type": "contains",
      "label": "定义类 MultiSourceRetriever"
    },
    {
      "id": "edge:65c126d7",
      "source": "class:MultiSourceRetriever",
      "target": "func:MultiSourceRetriever.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:193de005",
      "source": "class:MultiSourceRetriever",
      "target": "func:MultiSourceRetriever.register_source",
      "type": "contains",
      "label": "方法 register_source"
    },
    {
      "id": "edge:92363ba7",
      "source": "class:MultiSourceRetriever",
      "target": "func:MultiSourceRetriever.unregister_source",
      "type": "contains",
      "label": "方法 unregister_source"
    },
    {
      "id": "edge:56b0f165",
      "source": "class:MultiSourceRetriever",
      "target": "func:MultiSourceRetriever.search",
      "type": "contains",
      "label": "方法 search"
    },
    {
      "id": "edge:0773fd21",
      "source": "class:MultiSourceRetriever",
      "target": "func:MultiSourceRetriever.list_all_sources",
      "type": "contains",
      "label": "方法 list_all_sources"
    },
    {
      "id": "edge:14b40130",
      "source": "class:MultiSourceRetriever",
      "target": "func:MultiSourceRetriever.get_source_names",
      "type": "contains",
      "label": "方法 get_source_names"
    },
    {
      "id": "edge:f8d39c0c",
      "source": "class:MultiSourceRetriever",
      "target": "func:MultiSourceRetriever._resolve_sources",
      "type": "contains",
      "label": "方法 _resolve_sources"
    },
    {
      "id": "edge:d7e36606",
      "source": "class:MultiSourceRetriever",
      "target": "func:MultiSourceRetriever._query_sources",
      "type": "contains",
      "label": "方法 _query_sources"
    },
    {
      "id": "edge:020aad3e",
      "source": "class:MultiSourceRetriever",
      "target": "func:MultiSourceRetriever._deduplicate",
      "type": "contains",
      "label": "方法 _deduplicate"
    },
    {
      "id": "edge:9b09744c",
      "source": "file:src/agentkit/memory/profile.py",
      "target": "class:MemoryFile",
      "type": "contains",
      "label": "定义类 MemoryFile"
    },
    {
      "id": "edge:1323f262",
      "source": "class:MemoryFile",
      "target": "func:MemoryFile.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:0ad235e7",
      "source": "class:MemoryFile",
      "target": "func:MemoryFile.read",
      "type": "contains",
      "label": "方法 read"
    },
    {
      "id": "edge:7f3e3d48",
      "source": "class:MemoryFile",
      "target": "func:MemoryFile.write",
      "type": "contains",
      "label": "方法 write"
    },
    {
      "id": "edge:b7e7cc3e",
      "source": "class:MemoryFile",
      "target": "func:MemoryFile.read_section",
      "type": "contains",
      "label": "方法 read_section"
    },
    {
      "id": "edge:5a06cb95",
      "source": "class:MemoryFile",
      "target": "func:MemoryFile.add_section",
      "type": "contains",
      "label": "方法 add_section"
    },
    {
      "id": "edge:ee03867c",
      "source": "class:MemoryFile",
      "target": "func:MemoryFile.replace_section",
      "type": "contains",
      "label": "方法 replace_section"
    },
    {
      "id": "edge:b2895db7",
      "source": "class:MemoryFile",
      "target": "func:MemoryFile.remove_section",
      "type": "contains",
      "label": "方法 remove_section"
    },
    {
      "id": "edge:1967cd67",
      "source": "class:MemoryFile",
      "target": "func:MemoryFile.list_sections",
      "type": "contains",
      "label": "方法 list_sections"
    },
    {
      "id": "edge:a1c62930",
      "source": "class:MemoryFile",
      "target": "func:MemoryFile.trim_to_budget",
      "type": "contains",
      "label": "方法 trim_to_budget"
    },
    {
      "id": "edge:f11a0680",
      "source": "class:MemoryFile",
      "target": "func:MemoryFile._trim_content",
      "type": "contains",
      "label": "方法 _trim_content"
    },
    {
      "id": "edge:8548432e",
      "source": "file:src/agentkit/memory/profile.py",
      "target": "class:MemorySnapshot",
      "type": "contains",
      "label": "定义类 MemorySnapshot"
    },
    {
      "id": "edge:8a99ef25",
      "source": "class:MemorySnapshot",
      "target": "func:MemorySnapshot.is_empty",
      "type": "contains",
      "label": "方法 is_empty"
    },
    {
      "id": "edge:3af271d6",
      "source": "file:src/agentkit/memory/profile.py",
      "target": "class:MemoryStore",
      "type": "contains",
      "label": "定义类 MemoryStore"
    },
    {
      "id": "edge:67dbcea0",
      "source": "class:MemoryStore",
      "target": "func:MemoryStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:66896b6d",
      "source": "class:MemoryStore",
      "target": "func:MemoryStore.get_file",
      "type": "contains",
      "label": "方法 get_file"
    },
    {
      "id": "edge:47456235",
      "source": "class:MemoryStore",
      "target": "func:MemoryStore.ensure_defaults",
      "type": "contains",
      "label": "方法 ensure_defaults"
    },
    {
      "id": "edge:0671339c",
      "source": "class:MemoryStore",
      "target": "func:MemoryStore.load_all",
      "type": "contains",
      "label": "方法 load_all"
    },
    {
      "id": "edge:53bee6ad",
      "source": "class:MemoryStore",
      "target": "func:MemoryStore.load_daily_logs",
      "type": "contains",
      "label": "方法 load_daily_logs"
    },
    {
      "id": "edge:657b5736",
      "source": "class:MemoryStore",
      "target": "func:MemoryStore.archive_old_dailies",
      "type": "contains",
      "label": "方法 archive_old_dailies"
    },
    {
      "id": "edge:e3e383a4",
      "source": "class:MemoryStore",
      "target": "func:MemoryStore.build_system_prompt",
      "type": "contains",
      "label": "方法 build_system_prompt"
    },
    {
      "id": "edge:639d48a2",
      "source": "class:MemoryStore",
      "target": "func:MemoryStore.refresh_system_prompt",
      "type": "contains",
      "label": "方法 refresh_system_prompt"
    },
    {
      "id": "edge:07bee160",
      "source": "class:MemoryStore",
      "target": "func:MemoryStore.notify_change",
      "type": "contains",
      "label": "方法 notify_change"
    },
    {
      "id": "edge:175eef4b",
      "source": "file:src/agentkit/memory/query_transformer.py",
      "target": "class:TransformedQuery",
      "type": "contains",
      "label": "定义类 TransformedQuery"
    },
    {
      "id": "edge:72d7bce3",
      "source": "file:src/agentkit/memory/query_transformer.py",
      "target": "class:QueryTransformerBase",
      "type": "contains",
      "label": "定义类 QueryTransformerBase"
    },
    {
      "id": "edge:ff1ef985",
      "source": "class:QueryTransformerBase",
      "target": "func:QueryTransformerBase.transform",
      "type": "contains",
      "label": "方法 transform"
    },
    {
      "id": "edge:bcd47686",
      "source": "file:src/agentkit/memory/query_transformer.py",
      "target": "class:LLMQueryTransformer",
      "type": "contains",
      "label": "定义类 LLMQueryTransformer"
    },
    {
      "id": "edge:eadec6ca",
      "source": "class:LLMQueryTransformer",
      "target": "class:QueryTransformerBase",
      "type": "extends",
      "label": "继承 QueryTransformerBase"
    },
    {
      "id": "edge:90a8ba0e",
      "source": "class:LLMQueryTransformer",
      "target": "func:LLMQueryTransformer.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:b13e9efb",
      "source": "class:LLMQueryTransformer",
      "target": "func:LLMQueryTransformer.transform",
      "type": "contains",
      "label": "方法 transform"
    },
    {
      "id": "edge:287ec7d8",
      "source": "file:src/agentkit/memory/query_transformer.py",
      "target": "class:RuleQueryTransformer",
      "type": "contains",
      "label": "定义类 RuleQueryTransformer"
    },
    {
      "id": "edge:9906b99f",
      "source": "class:RuleQueryTransformer",
      "target": "class:QueryTransformerBase",
      "type": "extends",
      "label": "继承 QueryTransformerBase"
    },
    {
      "id": "edge:ed6af7da",
      "source": "class:RuleQueryTransformer",
      "target": "func:RuleQueryTransformer.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:f0c58cdb",
      "source": "class:RuleQueryTransformer",
      "target": "func:RuleQueryTransformer.transform",
      "type": "contains",
      "label": "方法 transform"
    },
    {
      "id": "edge:357038a0",
      "source": "file:src/agentkit/memory/query_transformer.py",
      "target": "class:NoOpQueryTransformer",
      "type": "contains",
      "label": "定义类 NoOpQueryTransformer"
    },
    {
      "id": "edge:e6fe4ce3",
      "source": "class:NoOpQueryTransformer",
      "target": "class:QueryTransformerBase",
      "type": "extends",
      "label": "继承 QueryTransformerBase"
    },
    {
      "id": "edge:ebe7521e",
      "source": "class:NoOpQueryTransformer",
      "target": "func:NoOpQueryTransformer.transform",
      "type": "contains",
      "label": "方法 transform"
    },
    {
      "id": "edge:2713a3cd",
      "source": "file:src/agentkit/memory/rag_loop.py",
      "target": "class:LoopState",
      "type": "contains",
      "label": "定义类 LoopState"
    },
    {
      "id": "edge:fc110f9f",
      "source": "file:src/agentkit/memory/rag_loop.py",
      "target": "class:CorrectionAttempt",
      "type": "contains",
      "label": "定义类 CorrectionAttempt"
    },
    {
      "id": "edge:cfe74cec",
      "source": "file:src/agentkit/memory/rag_loop.py",
      "target": "class:RAGLoopResult",
      "type": "contains",
      "label": "定义类 RAGLoopResult"
    },
    {
      "id": "edge:3fe8a102",
      "source": "file:src/agentkit/memory/rag_loop.py",
      "target": "class:RAGSelfCorrectionLoop",
      "type": "contains",
      "label": "定义类 RAGSelfCorrectionLoop"
    },
    {
      "id": "edge:5da10339",
      "source": "class:RAGSelfCorrectionLoop",
      "target": "func:RAGSelfCorrectionLoop.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:f774498b",
      "source": "class:RAGSelfCorrectionLoop",
      "target": "func:RAGSelfCorrectionLoop.retrieve_with_correction",
      "type": "contains",
      "label": "方法 retrieve_with_correction"
    },
    {
      "id": "edge:4f4c5d39",
      "source": "class:RAGSelfCorrectionLoop",
      "target": "func:RAGSelfCorrectionLoop._determine_next_state",
      "type": "contains",
      "label": "方法 _determine_next_state"
    },
    {
      "id": "edge:fddb7a80",
      "source": "class:RAGSelfCorrectionLoop",
      "target": "func:RAGSelfCorrectionLoop._rewrite_query",
      "type": "contains",
      "label": "方法 _rewrite_query"
    },
    {
      "id": "edge:6f849ade",
      "source": "file:src/agentkit/memory/relevance_scorer.py",
      "target": "class:RelevanceVerdict",
      "type": "contains",
      "label": "定义类 RelevanceVerdict"
    },
    {
      "id": "edge:a2fbad63",
      "source": "file:src/agentkit/memory/relevance_scorer.py",
      "target": "class:RelevanceScore",
      "type": "contains",
      "label": "定义类 RelevanceScore"
    },
    {
      "id": "edge:e3dc7868",
      "source": "file:src/agentkit/memory/relevance_scorer.py",
      "target": "class:RetrievalEvaluation",
      "type": "contains",
      "label": "定义类 RetrievalEvaluation"
    },
    {
      "id": "edge:dabbd750",
      "source": "file:src/agentkit/memory/relevance_scorer.py",
      "target": "class:RelevanceScorer",
      "type": "contains",
      "label": "定义类 RelevanceScorer"
    },
    {
      "id": "edge:adb21c65",
      "source": "class:RelevanceScorer",
      "target": "func:RelevanceScorer.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:f35f685e",
      "source": "class:RelevanceScorer",
      "target": "func:RelevanceScorer.score_item",
      "type": "contains",
      "label": "方法 score_item"
    },
    {
      "id": "edge:05822bc5",
      "source": "class:RelevanceScorer",
      "target": "func:RelevanceScorer.evaluate",
      "type": "contains",
      "label": "方法 evaluate"
    },
    {
      "id": "edge:5131cfad",
      "source": "class:RelevanceScorer",
      "target": "func:RelevanceScorer._determine_verdict",
      "type": "contains",
      "label": "方法 _determine_verdict"
    },
    {
      "id": "edge:89081bf5",
      "source": "class:RelevanceScorer",
      "target": "func:RelevanceScorer._tokenize",
      "type": "contains",
      "label": "方法 _tokenize"
    },
    {
      "id": "edge:a471a31e",
      "source": "class:RelevanceScorer",
      "target": "func:RelevanceScorer._jaccard_similarity",
      "type": "contains",
      "label": "方法 _jaccard_similarity"
    },
    {
      "id": "edge:5a47326b",
      "source": "class:RelevanceScorer",
      "target": "func:RelevanceScorer._query_coverage",
      "type": "contains",
      "label": "方法 _query_coverage"
    },
    {
      "id": "edge:c90727d8",
      "source": "class:RelevanceScorer",
      "target": "func:RelevanceScorer._length_score",
      "type": "contains",
      "label": "方法 _length_score"
    },
    {
      "id": "edge:3e1bb20a",
      "source": "file:src/agentkit/memory/retriever.py",
      "target": "class:MemoryRetriever",
      "type": "contains",
      "label": "定义类 MemoryRetriever"
    },
    {
      "id": "edge:221068b4",
      "source": "class:MemoryRetriever",
      "target": "func:MemoryRetriever.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:e0fce00b",
      "source": "class:MemoryRetriever",
      "target": "func:MemoryRetriever.retrieve",
      "type": "contains",
      "label": "方法 retrieve"
    },
    {
      "id": "edge:9908d096",
      "source": "class:MemoryRetriever",
      "target": "func:MemoryRetriever._search_layers",
      "type": "contains",
      "label": "方法 _search_layers"
    },
    {
      "id": "edge:dc9990b5",
      "source": "class:MemoryRetriever",
      "target": "func:MemoryRetriever._retrieve_from_sources",
      "type": "contains",
      "label": "方法 _retrieve_from_sources"
    },
    {
      "id": "edge:bda6a7a7",
      "source": "class:MemoryRetriever",
      "target": "func:MemoryRetriever.multi_source_retriever",
      "type": "contains",
      "label": "方法 multi_source_retriever"
    },
    {
      "id": "edge:e71d93a0",
      "source": "class:MemoryRetriever",
      "target": "func:MemoryRetriever.get_context_string",
      "type": "contains",
      "label": "方法 get_context_string"
    },
    {
      "id": "edge:1e183ee6",
      "source": "class:MemoryRetriever",
      "target": "func:MemoryRetriever._format_structured_header",
      "type": "contains",
      "label": "方法 _format_structured_header"
    },
    {
      "id": "edge:396e1a30",
      "source": "class:MemoryRetriever",
      "target": "func:MemoryRetriever.store_episode",
      "type": "contains",
      "label": "方法 store_episode"
    },
    {
      "id": "edge:9c3b0ea5",
      "source": "class:MemoryRetriever",
      "target": "func:MemoryRetriever.create_retrieve_tool",
      "type": "contains",
      "label": "方法 create_retrieve_tool"
    },
    {
      "id": "edge:18a62102",
      "source": "file:src/agentkit/memory/retriever.py",
      "target": "class:RetrieveKnowledgeTool",
      "type": "contains",
      "label": "定义类 RetrieveKnowledgeTool"
    },
    {
      "id": "edge:6bb5756a",
      "source": "class:RetrieveKnowledgeTool",
      "target": "func:RetrieveKnowledgeTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:7303d75f",
      "source": "class:RetrieveKnowledgeTool",
      "target": "func:RetrieveKnowledgeTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:37797114",
      "source": "file:src/agentkit/memory/semantic.py",
      "target": "class:SemanticMemory",
      "type": "contains",
      "label": "定义类 SemanticMemory"
    },
    {
      "id": "edge:ba503177",
      "source": "class:SemanticMemory",
      "target": "class:Memory",
      "type": "extends",
      "label": "继承 Memory"
    },
    {
      "id": "edge:974cd492",
      "source": "class:SemanticMemory",
      "target": "func:SemanticMemory.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c3b61eff",
      "source": "class:SemanticMemory",
      "target": "func:SemanticMemory.store",
      "type": "contains",
      "label": "方法 store"
    },
    {
      "id": "edge:ba72ca9f",
      "source": "class:SemanticMemory",
      "target": "func:SemanticMemory.retrieve",
      "type": "contains",
      "label": "方法 retrieve"
    },
    {
      "id": "edge:5853d3a1",
      "source": "class:SemanticMemory",
      "target": "func:SemanticMemory.search",
      "type": "contains",
      "label": "方法 search"
    },
    {
      "id": "edge:61054fa6",
      "source": "class:SemanticMemory",
      "target": "func:SemanticMemory.delete",
      "type": "contains",
      "label": "方法 delete"
    },
    {
      "id": "edge:ef60006f",
      "source": "file:src/agentkit/memory/working.py",
      "target": "class:WorkingMemory",
      "type": "contains",
      "label": "定义类 WorkingMemory"
    },
    {
      "id": "edge:55696a17",
      "source": "class:WorkingMemory",
      "target": "class:Memory",
      "type": "extends",
      "label": "继承 Memory"
    },
    {
      "id": "edge:3d8fceb2",
      "source": "class:WorkingMemory",
      "target": "func:WorkingMemory.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:5aa18736",
      "source": "class:WorkingMemory",
      "target": "func:WorkingMemory._make_key",
      "type": "contains",
      "label": "方法 _make_key"
    },
    {
      "id": "edge:96309aab",
      "source": "class:WorkingMemory",
      "target": "func:WorkingMemory.store",
      "type": "contains",
      "label": "方法 store"
    },
    {
      "id": "edge:e51adc8c",
      "source": "class:WorkingMemory",
      "target": "func:WorkingMemory.retrieve",
      "type": "contains",
      "label": "方法 retrieve"
    },
    {
      "id": "edge:c76c1f73",
      "source": "class:WorkingMemory",
      "target": "func:WorkingMemory.search",
      "type": "contains",
      "label": "方法 search"
    },
    {
      "id": "edge:3ddc7086",
      "source": "class:WorkingMemory",
      "target": "func:WorkingMemory.delete",
      "type": "contains",
      "label": "方法 delete"
    },
    {
      "id": "edge:0b12abd2",
      "source": "class:WorkingMemory",
      "target": "func:WorkingMemory.clear",
      "type": "contains",
      "label": "方法 clear"
    },
    {
      "id": "edge:6c6dc052",
      "source": "file:src/agentkit/orchestrator/compensation.py",
      "target": "class:CompletedStep",
      "type": "contains",
      "label": "定义类 CompletedStep"
    },
    {
      "id": "edge:b4a5c5db",
      "source": "file:src/agentkit/orchestrator/compensation.py",
      "target": "class:CompensationResult",
      "type": "contains",
      "label": "定义类 CompensationResult"
    },
    {
      "id": "edge:9ac98c43",
      "source": "file:src/agentkit/orchestrator/compensation.py",
      "target": "class:SagaOrchestrator",
      "type": "contains",
      "label": "定义类 SagaOrchestrator"
    },
    {
      "id": "edge:b20072c1",
      "source": "class:SagaOrchestrator",
      "target": "func:SagaOrchestrator.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:f27eb1b6",
      "source": "class:SagaOrchestrator",
      "target": "func:SagaOrchestrator.record_completed",
      "type": "contains",
      "label": "方法 record_completed"
    },
    {
      "id": "edge:9e84beaf",
      "source": "class:SagaOrchestrator",
      "target": "func:SagaOrchestrator.compensate",
      "type": "contains",
      "label": "方法 compensate"
    },
    {
      "id": "edge:3d16af15",
      "source": "class:SagaOrchestrator",
      "target": "func:SagaOrchestrator.clear",
      "type": "contains",
      "label": "方法 clear"
    },
    {
      "id": "edge:dab39b8f",
      "source": "class:SagaOrchestrator",
      "target": "func:SagaOrchestrator.completed_steps",
      "type": "contains",
      "label": "方法 completed_steps"
    },
    {
      "id": "edge:56edb0d9",
      "source": "file:src/agentkit/orchestrator/dynamic_pipeline.py",
      "target": "class:DynamicPipeline",
      "type": "contains",
      "label": "定义类 DynamicPipeline"
    },
    {
      "id": "edge:8a596f6d",
      "source": "class:DynamicPipeline",
      "target": "func:DynamicPipeline.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:538871f2",
      "source": "class:DynamicPipeline",
      "target": "func:DynamicPipeline.execute_conditional",
      "type": "contains",
      "label": "方法 execute_conditional"
    },
    {
      "id": "edge:bc295cfc",
      "source": "class:DynamicPipeline",
      "target": "func:DynamicPipeline.execute_nested",
      "type": "contains",
      "label": "方法 execute_nested"
    },
    {
      "id": "edge:0c785551",
      "source": "class:DynamicPipeline",
      "target": "func:DynamicPipeline.execute_loop",
      "type": "contains",
      "label": "方法 execute_loop"
    },
    {
      "id": "edge:2b48f7d3",
      "source": "file:src/agentkit/orchestrator/handoff.py",
      "target": "class:HandoffManager",
      "type": "contains",
      "label": "定义类 HandoffManager"
    },
    {
      "id": "edge:e33e0c17",
      "source": "class:HandoffManager",
      "target": "func:HandoffManager.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:7ae92848",
      "source": "class:HandoffManager",
      "target": "func:HandoffManager.register_handler",
      "type": "contains",
      "label": "方法 register_handler"
    },
    {
      "id": "edge:82d1e0b4",
      "source": "class:HandoffManager",
      "target": "func:HandoffManager.send_handoff",
      "type": "contains",
      "label": "方法 send_handoff"
    },
    {
      "id": "edge:32c4cb5b",
      "source": "class:HandoffManager",
      "target": "func:HandoffManager.listen_for_handoffs",
      "type": "contains",
      "label": "方法 listen_for_handoffs"
    },
    {
      "id": "edge:5e1f6f0c",
      "source": "class:HandoffManager",
      "target": "func:HandoffManager._handle_handoff",
      "type": "contains",
      "label": "方法 _handle_handoff"
    },
    {
      "id": "edge:6f592e31",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "class:PipelineEngine",
      "type": "contains",
      "label": "定义类 PipelineEngine"
    },
    {
      "id": "edge:be1d9f76",
      "source": "class:PipelineEngine",
      "target": "func:PipelineEngine.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:8dbdf1be",
      "source": "class:PipelineEngine",
      "target": "func:PipelineEngine.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:f4fe1354",
      "source": "class:PipelineEngine",
      "target": "func:PipelineEngine._adaptive_loop",
      "type": "contains",
      "label": "方法 _adaptive_loop"
    },
    {
      "id": "edge:ed5588e6",
      "source": "class:PipelineEngine",
      "target": "func:PipelineEngine._execute_pipeline",
      "type": "contains",
      "label": "方法 _execute_pipeline"
    },
    {
      "id": "edge:3082a2f4",
      "source": "class:PipelineEngine",
      "target": "func:PipelineEngine._execute_stage",
      "type": "contains",
      "label": "方法 _execute_stage"
    },
    {
      "id": "edge:76546252",
      "source": "class:PipelineEngine",
      "target": "func:PipelineEngine._topological_group",
      "type": "contains",
      "label": "方法 _topological_group"
    },
    {
      "id": "edge:2ba67446",
      "source": "class:PipelineEngine",
      "target": "func:PipelineEngine._resolve_variables",
      "type": "contains",
      "label": "方法 _resolve_variables"
    },
    {
      "id": "edge:cba821a6",
      "source": "class:PipelineEngine",
      "target": "func:PipelineEngine._get_nested",
      "type": "contains",
      "label": "方法 _get_nested"
    },
    {
      "id": "edge:a79af456",
      "source": "class:PipelineEngine",
      "target": "func:PipelineEngine._evaluate_condition",
      "type": "contains",
      "label": "方法 _evaluate_condition"
    },
    {
      "id": "edge:06585c6b",
      "source": "class:PipelineEngine",
      "target": "func:PipelineEngine._execute_stage_with_adversarial",
      "type": "contains",
      "label": "方法 _execute_stage_with_adversarial"
    },
    {
      "id": "edge:9c8a6b7b",
      "source": "class:PipelineEngine",
      "target": "func:PipelineEngine._execute_agent_stage",
      "type": "contains",
      "label": "方法 _execute_agent_stage"
    },
    {
      "id": "edge:3db707f6",
      "source": "class:PipelineEngine",
      "target": "func:PipelineEngine._execute_verifier",
      "type": "contains",
      "label": "方法 _execute_verifier"
    },
    {
      "id": "edge:d300fd17",
      "source": "class:PipelineEngine",
      "target": "func:PipelineEngine._build_feedback_context",
      "type": "contains",
      "label": "方法 _build_feedback_context"
    },
    {
      "id": "edge:d9fd2293",
      "source": "class:PipelineEngine",
      "target": "func:PipelineEngine._escalate",
      "type": "contains",
      "label": "方法 _escalate"
    },
    {
      "id": "edge:f48fa045",
      "source": "file:src/agentkit/orchestrator/pipeline_loader.py",
      "target": "class:PipelineLoader",
      "type": "contains",
      "label": "定义类 PipelineLoader"
    },
    {
      "id": "edge:f23dedcb",
      "source": "class:PipelineLoader",
      "target": "func:PipelineLoader.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:86d6272b",
      "source": "class:PipelineLoader",
      "target": "func:PipelineLoader.load",
      "type": "contains",
      "label": "方法 load"
    },
    {
      "id": "edge:e603c9f8",
      "source": "class:PipelineLoader",
      "target": "func:PipelineLoader.load_from_yaml",
      "type": "contains",
      "label": "方法 load_from_yaml"
    },
    {
      "id": "edge:cea3d283",
      "source": "class:PipelineLoader",
      "target": "func:PipelineLoader.validate_dag",
      "type": "contains",
      "label": "方法 validate_dag"
    },
    {
      "id": "edge:49b16446",
      "source": "file:src/agentkit/orchestrator/pipeline_models.py",
      "target": "class:Base",
      "type": "contains",
      "label": "定义类 Base"
    },
    {
      "id": "edge:457ae900",
      "source": "file:src/agentkit/orchestrator/pipeline_models.py",
      "target": "class:PipelineExecutionModel",
      "type": "contains",
      "label": "定义类 PipelineExecutionModel"
    },
    {
      "id": "edge:b2d16141",
      "source": "class:PipelineExecutionModel",
      "target": "class:Base",
      "type": "extends",
      "label": "继承 Base"
    },
    {
      "id": "edge:76084f6a",
      "source": "file:src/agentkit/orchestrator/pipeline_models.py",
      "target": "class:PipelineStepHistoryModel",
      "type": "contains",
      "label": "定义类 PipelineStepHistoryModel"
    },
    {
      "id": "edge:2678b1c9",
      "source": "class:PipelineStepHistoryModel",
      "target": "class:Base",
      "type": "extends",
      "label": "继承 Base"
    },
    {
      "id": "edge:6892bdf8",
      "source": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "target": "class:StageStatus",
      "type": "contains",
      "label": "定义类 StageStatus"
    },
    {
      "id": "edge:cbe4c0f2",
      "source": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "target": "class:ReviewIssue",
      "type": "contains",
      "label": "定义类 ReviewIssue"
    },
    {
      "id": "edge:557935f6",
      "source": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "target": "class:ReviewFeedback",
      "type": "contains",
      "label": "定义类 ReviewFeedback"
    },
    {
      "id": "edge:96e5254c",
      "source": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "target": "class:AdversarialState",
      "type": "contains",
      "label": "定义类 AdversarialState"
    },
    {
      "id": "edge:5508ba22",
      "source": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "target": "class:PipelineStage",
      "type": "contains",
      "label": "定义类 PipelineStage"
    },
    {
      "id": "edge:7f2ecd5b",
      "source": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "target": "class:Pipeline",
      "type": "contains",
      "label": "定义类 Pipeline"
    },
    {
      "id": "edge:0594ad84",
      "source": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "target": "class:StageResult",
      "type": "contains",
      "label": "定义类 StageResult"
    },
    {
      "id": "edge:d910550d",
      "source": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "target": "class:PipelineResult",
      "type": "contains",
      "label": "定义类 PipelineResult"
    },
    {
      "id": "edge:8801d0ec",
      "source": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "target": "class:AdaptiveConfig",
      "type": "contains",
      "label": "定义类 AdaptiveConfig"
    },
    {
      "id": "edge:3437d7e3",
      "source": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "target": "class:ReflectionReport",
      "type": "contains",
      "label": "定义类 ReflectionReport"
    },
    {
      "id": "edge:ce5e407a",
      "source": "file:src/agentkit/orchestrator/pipeline_state.py",
      "target": "class:PipelineStateMemory",
      "type": "contains",
      "label": "定义类 PipelineStateMemory"
    },
    {
      "id": "edge:c82c2520",
      "source": "class:PipelineStateMemory",
      "target": "func:PipelineStateMemory.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:ebe48116",
      "source": "class:PipelineStateMemory",
      "target": "func:PipelineStateMemory.create_execution",
      "type": "contains",
      "label": "方法 create_execution"
    },
    {
      "id": "edge:deff85fa",
      "source": "class:PipelineStateMemory",
      "target": "func:PipelineStateMemory.update_step",
      "type": "contains",
      "label": "方法 update_step"
    },
    {
      "id": "edge:c707d88f",
      "source": "class:PipelineStateMemory",
      "target": "func:PipelineStateMemory.complete_execution",
      "type": "contains",
      "label": "方法 complete_execution"
    },
    {
      "id": "edge:3403eefb",
      "source": "class:PipelineStateMemory",
      "target": "func:PipelineStateMemory.fail_execution",
      "type": "contains",
      "label": "方法 fail_execution"
    },
    {
      "id": "edge:403f76b2",
      "source": "class:PipelineStateMemory",
      "target": "func:PipelineStateMemory.get_execution",
      "type": "contains",
      "label": "方法 get_execution"
    },
    {
      "id": "edge:5fd5ef74",
      "source": "class:PipelineStateMemory",
      "target": "func:PipelineStateMemory.list_executions",
      "type": "contains",
      "label": "方法 list_executions"
    },
    {
      "id": "edge:b635ce8f",
      "source": "class:PipelineStateMemory",
      "target": "func:PipelineStateMemory.get_step_history",
      "type": "contains",
      "label": "方法 get_step_history"
    },
    {
      "id": "edge:48e557f1",
      "source": "class:PipelineStateMemory",
      "target": "func:PipelineStateMemory.get_execution_sync",
      "type": "contains",
      "label": "方法 get_execution_sync"
    },
    {
      "id": "edge:2b0e2b75",
      "source": "file:src/agentkit/orchestrator/pipeline_state.py",
      "target": "class:PipelineStateRedis",
      "type": "contains",
      "label": "定义类 PipelineStateRedis"
    },
    {
      "id": "edge:65cb6409",
      "source": "class:PipelineStateRedis",
      "target": "func:PipelineStateRedis.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:718bdd12",
      "source": "class:PipelineStateRedis",
      "target": "func:PipelineStateRedis._get_redis",
      "type": "contains",
      "label": "方法 _get_redis"
    },
    {
      "id": "edge:5958edf8",
      "source": "class:PipelineStateRedis",
      "target": "func:PipelineStateRedis._safe_redis_call",
      "type": "contains",
      "label": "方法 _safe_redis_call"
    },
    {
      "id": "edge:8c2d81f2",
      "source": "class:PipelineStateRedis",
      "target": "func:PipelineStateRedis._key",
      "type": "contains",
      "label": "方法 _key"
    },
    {
      "id": "edge:65d41281",
      "source": "class:PipelineStateRedis",
      "target": "func:PipelineStateRedis.create_execution",
      "type": "contains",
      "label": "方法 create_execution"
    },
    {
      "id": "edge:4d992c61",
      "source": "class:PipelineStateRedis",
      "target": "func:PipelineStateRedis.update_step",
      "type": "contains",
      "label": "方法 update_step"
    },
    {
      "id": "edge:5fd54ef5",
      "source": "class:PipelineStateRedis",
      "target": "func:PipelineStateRedis.complete_execution",
      "type": "contains",
      "label": "方法 complete_execution"
    },
    {
      "id": "edge:f606d157",
      "source": "class:PipelineStateRedis",
      "target": "func:PipelineStateRedis.fail_execution",
      "type": "contains",
      "label": "方法 fail_execution"
    },
    {
      "id": "edge:a2224111",
      "source": "class:PipelineStateRedis",
      "target": "func:PipelineStateRedis.get_execution",
      "type": "contains",
      "label": "方法 get_execution"
    },
    {
      "id": "edge:b67c836f",
      "source": "class:PipelineStateRedis",
      "target": "func:PipelineStateRedis.list_executions",
      "type": "contains",
      "label": "方法 list_executions"
    },
    {
      "id": "edge:f910768a",
      "source": "class:PipelineStateRedis",
      "target": "func:PipelineStateRedis.get_step_history",
      "type": "contains",
      "label": "方法 get_step_history"
    },
    {
      "id": "edge:2f2705e1",
      "source": "class:PipelineStateRedis",
      "target": "func:PipelineStateRedis.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:2c0c8b44",
      "source": "class:PipelineStateRedis",
      "target": "func:PipelineStateRedis.using_fallback",
      "type": "contains",
      "label": "方法 using_fallback"
    },
    {
      "id": "edge:9fae93c2",
      "source": "file:src/agentkit/orchestrator/pipeline_state.py",
      "target": "class:PipelineStatePG",
      "type": "contains",
      "label": "定义类 PipelineStatePG"
    },
    {
      "id": "edge:f68ca4a8",
      "source": "class:PipelineStatePG",
      "target": "func:PipelineStatePG.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:2415b33c",
      "source": "class:PipelineStatePG",
      "target": "func:PipelineStatePG.enabled",
      "type": "contains",
      "label": "方法 enabled"
    },
    {
      "id": "edge:65df40a1",
      "source": "class:PipelineStatePG",
      "target": "func:PipelineStatePG.persist_execution",
      "type": "contains",
      "label": "方法 persist_execution"
    },
    {
      "id": "edge:b5b00ed7",
      "source": "class:PipelineStatePG",
      "target": "func:PipelineStatePG.persist_step_history",
      "type": "contains",
      "label": "方法 persist_step_history"
    },
    {
      "id": "edge:0178b117",
      "source": "class:PipelineStatePG",
      "target": "func:PipelineStatePG.query_executions",
      "type": "contains",
      "label": "方法 query_executions"
    },
    {
      "id": "edge:9667b021",
      "source": "class:PipelineStatePG",
      "target": "func:PipelineStatePG.get_execution",
      "type": "contains",
      "label": "方法 get_execution"
    },
    {
      "id": "edge:a5761187",
      "source": "class:PipelineStatePG",
      "target": "func:PipelineStatePG._model_to_dict",
      "type": "contains",
      "label": "方法 _model_to_dict"
    },
    {
      "id": "edge:0a853635",
      "source": "file:src/agentkit/orchestrator/pipeline_state.py",
      "target": "class:PipelineStateManager",
      "type": "contains",
      "label": "定义类 PipelineStateManager"
    },
    {
      "id": "edge:f6a10111",
      "source": "class:PipelineStateManager",
      "target": "func:PipelineStateManager.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:a2dfea38",
      "source": "class:PipelineStateManager",
      "target": "func:PipelineStateManager.hot_store",
      "type": "contains",
      "label": "方法 hot_store"
    },
    {
      "id": "edge:426a1edf",
      "source": "class:PipelineStateManager",
      "target": "func:PipelineStateManager.cold_store",
      "type": "contains",
      "label": "方法 cold_store"
    },
    {
      "id": "edge:3e1b4be1",
      "source": "class:PipelineStateManager",
      "target": "func:PipelineStateManager.create_execution",
      "type": "contains",
      "label": "方法 create_execution"
    },
    {
      "id": "edge:a580dc1c",
      "source": "class:PipelineStateManager",
      "target": "func:PipelineStateManager.update_step",
      "type": "contains",
      "label": "方法 update_step"
    },
    {
      "id": "edge:3f0009c7",
      "source": "class:PipelineStateManager",
      "target": "func:PipelineStateManager.complete_execution",
      "type": "contains",
      "label": "方法 complete_execution"
    },
    {
      "id": "edge:faea30e5",
      "source": "class:PipelineStateManager",
      "target": "func:PipelineStateManager.fail_execution",
      "type": "contains",
      "label": "方法 fail_execution"
    },
    {
      "id": "edge:6bd191d6",
      "source": "class:PipelineStateManager",
      "target": "func:PipelineStateManager.get_execution",
      "type": "contains",
      "label": "方法 get_execution"
    },
    {
      "id": "edge:6a6e7c54",
      "source": "class:PipelineStateManager",
      "target": "func:PipelineStateManager.list_executions",
      "type": "contains",
      "label": "方法 list_executions"
    },
    {
      "id": "edge:cbd1bdc7",
      "source": "class:PipelineStateManager",
      "target": "func:PipelineStateManager.get_step_history",
      "type": "contains",
      "label": "方法 get_step_history"
    },
    {
      "id": "edge:9aa3c113",
      "source": "class:PipelineStateManager",
      "target": "func:PipelineStateManager.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:d524ca75",
      "source": "file:src/agentkit/orchestrator/reflection.py",
      "target": "class:PipelineReflector",
      "type": "contains",
      "label": "定义类 PipelineReflector"
    },
    {
      "id": "edge:b33b3868",
      "source": "class:PipelineReflector",
      "target": "func:PipelineReflector.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:dbda41c2",
      "source": "class:PipelineReflector",
      "target": "func:PipelineReflector.reflect",
      "type": "contains",
      "label": "方法 reflect"
    },
    {
      "id": "edge:575fa619",
      "source": "class:PipelineReflector",
      "target": "func:PipelineReflector._find_failure",
      "type": "contains",
      "label": "方法 _find_failure"
    },
    {
      "id": "edge:3288c3c4",
      "source": "class:PipelineReflector",
      "target": "func:PipelineReflector._collect_completed_outputs",
      "type": "contains",
      "label": "方法 _collect_completed_outputs"
    },
    {
      "id": "edge:77b1650c",
      "source": "class:PipelineReflector",
      "target": "func:PipelineReflector._llm_reflect",
      "type": "contains",
      "label": "方法 _llm_reflect"
    },
    {
      "id": "edge:265e5cf3",
      "source": "class:PipelineReflector",
      "target": "func:PipelineReflector._build_reflection_prompt",
      "type": "contains",
      "label": "方法 _build_reflection_prompt"
    },
    {
      "id": "edge:0da1dbfe",
      "source": "class:PipelineReflector",
      "target": "func:PipelineReflector._parse_reflection_response",
      "type": "contains",
      "label": "方法 _parse_reflection_response"
    },
    {
      "id": "edge:e5c33275",
      "source": "class:PipelineReflector",
      "target": "func:PipelineReflector._rule_based_reflect",
      "type": "contains",
      "label": "方法 _rule_based_reflect"
    },
    {
      "id": "edge:c8f5575b",
      "source": "file:src/agentkit/orchestrator/reflection.py",
      "target": "class:PipelineReplanner",
      "type": "contains",
      "label": "定义类 PipelineReplanner"
    },
    {
      "id": "edge:56691b7e",
      "source": "class:PipelineReplanner",
      "target": "func:PipelineReplanner.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:97a7c7f0",
      "source": "class:PipelineReplanner",
      "target": "func:PipelineReplanner.replan",
      "type": "contains",
      "label": "方法 replan"
    },
    {
      "id": "edge:8e83f0d3",
      "source": "class:PipelineReplanner",
      "target": "func:PipelineReplanner._llm_replan",
      "type": "contains",
      "label": "方法 _llm_replan"
    },
    {
      "id": "edge:4a1fe702",
      "source": "class:PipelineReplanner",
      "target": "func:PipelineReplanner._parse_pipeline_response",
      "type": "contains",
      "label": "方法 _parse_pipeline_response"
    },
    {
      "id": "edge:41048fa6",
      "source": "class:PipelineReplanner",
      "target": "func:PipelineReplanner._rule_based_replan",
      "type": "contains",
      "label": "方法 _rule_based_replan"
    },
    {
      "id": "edge:ec173d0d",
      "source": "class:PipelineReplanner",
      "target": "func:PipelineReplanner._adjust_failed_stage",
      "type": "contains",
      "label": "方法 _adjust_failed_stage"
    },
    {
      "id": "edge:8f16344c",
      "source": "file:src/agentkit/orchestrator/retry.py",
      "target": "class:StepRetryPolicy",
      "type": "contains",
      "label": "定义类 StepRetryPolicy"
    },
    {
      "id": "edge:e30dfe01",
      "source": "class:StepRetryPolicy",
      "target": "func:StepRetryPolicy.calculate_delay",
      "type": "contains",
      "label": "方法 calculate_delay"
    },
    {
      "id": "edge:de13be3a",
      "source": "file:src/agentkit/orchestrator/workflow_schema.py",
      "target": "class:WorkflowStage",
      "type": "contains",
      "label": "定义类 WorkflowStage"
    },
    {
      "id": "edge:86b39f0e",
      "source": "class:WorkflowStage",
      "target": "class:PipelineStage",
      "type": "extends",
      "label": "继承 PipelineStage"
    },
    {
      "id": "edge:6d1ff9b0",
      "source": "file:src/agentkit/orchestrator/workflow_schema.py",
      "target": "class:WorkflowDefinition",
      "type": "contains",
      "label": "定义类 WorkflowDefinition"
    },
    {
      "id": "edge:2d334048",
      "source": "file:src/agentkit/orchestrator/workflow_schema.py",
      "target": "class:WorkflowExecution",
      "type": "contains",
      "label": "定义类 WorkflowExecution"
    },
    {
      "id": "edge:4de302c1",
      "source": "file:src/agentkit/orchestrator/workflow_schema.py",
      "target": "class:WorkflowSummary",
      "type": "contains",
      "label": "定义类 WorkflowSummary"
    },
    {
      "id": "edge:1b5dd8c8",
      "source": "file:src/agentkit/orchestrator/workflow_schema.py",
      "target": "class:CreateWorkflowRequest",
      "type": "contains",
      "label": "定义类 CreateWorkflowRequest"
    },
    {
      "id": "edge:8181b8e9",
      "source": "file:src/agentkit/orchestrator/workflow_schema.py",
      "target": "class:ExecuteWorkflowRequest",
      "type": "contains",
      "label": "定义类 ExecuteWorkflowRequest"
    },
    {
      "id": "edge:c798afa2",
      "source": "file:src/agentkit/orchestrator/workflow_schema.py",
      "target": "class:ApproveRequest",
      "type": "contains",
      "label": "定义类 ApproveRequest"
    },
    {
      "id": "edge:22bcb40b",
      "source": "file:src/agentkit/org/context.py",
      "target": "class:AgentProfile",
      "type": "contains",
      "label": "定义类 AgentProfile"
    },
    {
      "id": "edge:e85dec86",
      "source": "file:src/agentkit/org/context.py",
      "target": "class:OrganizationContext",
      "type": "contains",
      "label": "定义类 OrganizationContext"
    },
    {
      "id": "edge:f7c0a1c1",
      "source": "class:OrganizationContext",
      "target": "func:OrganizationContext.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:6d4921a8",
      "source": "class:OrganizationContext",
      "target": "func:OrganizationContext.register_agent",
      "type": "contains",
      "label": "方法 register_agent"
    },
    {
      "id": "edge:a79e5f40",
      "source": "class:OrganizationContext",
      "target": "func:OrganizationContext.unregister_agent",
      "type": "contains",
      "label": "方法 unregister_agent"
    },
    {
      "id": "edge:f97979ca",
      "source": "class:OrganizationContext",
      "target": "func:OrganizationContext.get_agent_profile",
      "type": "contains",
      "label": "方法 get_agent_profile"
    },
    {
      "id": "edge:7702ee10",
      "source": "class:OrganizationContext",
      "target": "func:OrganizationContext.list_agents",
      "type": "contains",
      "label": "方法 list_agents"
    },
    {
      "id": "edge:bc26d520",
      "source": "class:OrganizationContext",
      "target": "func:OrganizationContext.find_best_agent",
      "type": "contains",
      "label": "方法 find_best_agent"
    },
    {
      "id": "edge:03af6177",
      "source": "class:OrganizationContext",
      "target": "func:OrganizationContext.update_load",
      "type": "contains",
      "label": "方法 update_load"
    },
    {
      "id": "edge:e4b22c91",
      "source": "class:OrganizationContext",
      "target": "func:OrganizationContext.set_availability",
      "type": "contains",
      "label": "方法 set_availability"
    },
    {
      "id": "edge:8cb5964f",
      "source": "class:OrganizationContext",
      "target": "func:OrganizationContext.from_agent_pool",
      "type": "contains",
      "label": "方法 from_agent_pool"
    },
    {
      "id": "edge:63439b4e",
      "source": "file:src/agentkit/org/discovery.py",
      "target": "class:AgentDiscovery",
      "type": "contains",
      "label": "定义类 AgentDiscovery"
    },
    {
      "id": "edge:89d3cef2",
      "source": "class:AgentDiscovery",
      "target": "func:AgentDiscovery.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:7a185ad1",
      "source": "class:AgentDiscovery",
      "target": "func:AgentDiscovery.discover_by_capability",
      "type": "contains",
      "label": "方法 discover_by_capability"
    },
    {
      "id": "edge:ad790eaf",
      "source": "class:AgentDiscovery",
      "target": "func:AgentDiscovery.discover_by_execution_mode",
      "type": "contains",
      "label": "方法 discover_by_execution_mode"
    },
    {
      "id": "edge:68d8c963",
      "source": "class:AgentDiscovery",
      "target": "func:AgentDiscovery.discover_available",
      "type": "contains",
      "label": "方法 discover_available"
    },
    {
      "id": "edge:c9d15f11",
      "source": "class:AgentDiscovery",
      "target": "func:AgentDiscovery.recommend_agent",
      "type": "contains",
      "label": "方法 recommend_agent"
    },
    {
      "id": "edge:58d0a52d",
      "source": "file:src/agentkit/prompts/section.py",
      "target": "class:PromptSection",
      "type": "contains",
      "label": "定义类 PromptSection"
    },
    {
      "id": "edge:54017eec",
      "source": "class:PromptSection",
      "target": "func:PromptSection.render",
      "type": "contains",
      "label": "方法 render"
    },
    {
      "id": "edge:1bd08d13",
      "source": "file:src/agentkit/prompts/template.py",
      "target": "class:PromptTemplate",
      "type": "contains",
      "label": "定义类 PromptTemplate"
    },
    {
      "id": "edge:a98e0415",
      "source": "class:PromptTemplate",
      "target": "func:PromptTemplate.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c239e90a",
      "source": "class:PromptTemplate",
      "target": "func:PromptTemplate.render",
      "type": "contains",
      "label": "方法 render"
    },
    {
      "id": "edge:0441e007",
      "source": "class:PromptTemplate",
      "target": "func:PromptTemplate.sections",
      "type": "contains",
      "label": "方法 sections"
    },
    {
      "id": "edge:0be8657d",
      "source": "class:PromptTemplate",
      "target": "func:PromptTemplate.render_cached",
      "type": "contains",
      "label": "方法 render_cached"
    },
    {
      "id": "edge:df800795",
      "source": "class:PromptTemplate",
      "target": "func:PromptTemplate.clear_cache",
      "type": "contains",
      "label": "方法 clear_cache"
    },
    {
      "id": "edge:3d80b4eb",
      "source": "file:src/agentkit/quality/alignment.py",
      "target": "class:AlignmentConfig",
      "type": "contains",
      "label": "定义类 AlignmentConfig"
    },
    {
      "id": "edge:65915c1b",
      "source": "class:AlignmentConfig",
      "target": "func:AlignmentConfig.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:5b7a9eeb",
      "source": "file:src/agentkit/quality/alignment.py",
      "target": "class:AlignmentCheckResult",
      "type": "contains",
      "label": "定义类 AlignmentCheckResult"
    },
    {
      "id": "edge:c897caeb",
      "source": "file:src/agentkit/quality/alignment.py",
      "target": "class:CascadeAlert",
      "type": "contains",
      "label": "定义类 CascadeAlert"
    },
    {
      "id": "edge:06bc600f",
      "source": "file:src/agentkit/quality/alignment.py",
      "target": "class:ConstraintInjector",
      "type": "contains",
      "label": "定义类 ConstraintInjector"
    },
    {
      "id": "edge:41981a2f",
      "source": "class:ConstraintInjector",
      "target": "func:ConstraintInjector.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:e32442f0",
      "source": "class:ConstraintInjector",
      "target": "func:ConstraintInjector.inject",
      "type": "contains",
      "label": "方法 inject"
    },
    {
      "id": "edge:7320c4c0",
      "source": "file:src/agentkit/quality/alignment.py",
      "target": "class:AlignmentGuard",
      "type": "contains",
      "label": "定义类 AlignmentGuard"
    },
    {
      "id": "edge:a92ffccd",
      "source": "class:AlignmentGuard",
      "target": "func:AlignmentGuard.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:e24b1b4b",
      "source": "class:AlignmentGuard",
      "target": "func:AlignmentGuard.inject_constraints",
      "type": "contains",
      "label": "方法 inject_constraints"
    },
    {
      "id": "edge:7f088743",
      "source": "class:AlignmentGuard",
      "target": "func:AlignmentGuard.check_output",
      "type": "contains",
      "label": "方法 check_output"
    },
    {
      "id": "edge:f1ca48c3",
      "source": "class:AlignmentGuard",
      "target": "func:AlignmentGuard._rule_check",
      "type": "contains",
      "label": "方法 _rule_check"
    },
    {
      "id": "edge:f88e1bae",
      "source": "class:AlignmentGuard",
      "target": "func:AlignmentGuard._is_positive_mention",
      "type": "contains",
      "label": "方法 _is_positive_mention"
    },
    {
      "id": "edge:ce4314ea",
      "source": "class:AlignmentGuard",
      "target": "func:AlignmentGuard._extract_text",
      "type": "contains",
      "label": "方法 _extract_text"
    },
    {
      "id": "edge:47db0a44",
      "source": "class:AlignmentGuard",
      "target": "func:AlignmentGuard._llm_check",
      "type": "contains",
      "label": "方法 _llm_check"
    },
    {
      "id": "edge:3d646947",
      "source": "class:AlignmentGuard",
      "target": "func:AlignmentGuard.record_interaction",
      "type": "contains",
      "label": "方法 record_interaction"
    },
    {
      "id": "edge:9221d8e3",
      "source": "class:AlignmentGuard",
      "target": "func:AlignmentGuard.record_loop_depth",
      "type": "contains",
      "label": "方法 record_loop_depth"
    },
    {
      "id": "edge:ef930225",
      "source": "class:AlignmentGuard",
      "target": "func:AlignmentGuard.reset_session",
      "type": "contains",
      "label": "方法 reset_session"
    },
    {
      "id": "edge:364a7dfb",
      "source": "class:AlignmentGuard",
      "target": "func:AlignmentGuard.get_interaction_count",
      "type": "contains",
      "label": "方法 get_interaction_count"
    },
    {
      "id": "edge:36be2e40",
      "source": "file:src/agentkit/quality/cascade_detector.py",
      "target": "class:CascadeAlert",
      "type": "contains",
      "label": "定义类 CascadeAlert"
    },
    {
      "id": "edge:82c08338",
      "source": "file:src/agentkit/quality/cascade_detector.py",
      "target": "class:CascadeDetector",
      "type": "contains",
      "label": "定义类 CascadeDetector"
    },
    {
      "id": "edge:ab0e155f",
      "source": "class:CascadeDetector",
      "target": "func:CascadeDetector.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:41990d6f",
      "source": "class:CascadeDetector",
      "target": "func:CascadeDetector.check_interaction",
      "type": "contains",
      "label": "方法 check_interaction"
    },
    {
      "id": "edge:5c67bc5b",
      "source": "class:CascadeDetector",
      "target": "func:CascadeDetector.check_depth",
      "type": "contains",
      "label": "方法 check_depth"
    },
    {
      "id": "edge:e2715e86",
      "source": "class:CascadeDetector",
      "target": "func:CascadeDetector.reset",
      "type": "contains",
      "label": "方法 reset"
    },
    {
      "id": "edge:881d9e6d",
      "source": "class:CascadeDetector",
      "target": "func:CascadeDetector.get_stats",
      "type": "contains",
      "label": "方法 get_stats"
    },
    {
      "id": "edge:055fa948",
      "source": "file:src/agentkit/quality/cascade_state_store.py",
      "target": "class:CascadeStateStore",
      "type": "contains",
      "label": "定义类 CascadeStateStore"
    },
    {
      "id": "edge:685c4e8a",
      "source": "class:CascadeStateStore",
      "target": "func:CascadeStateStore.increment_interaction",
      "type": "contains",
      "label": "方法 increment_interaction"
    },
    {
      "id": "edge:ef1d8a7c",
      "source": "class:CascadeStateStore",
      "target": "func:CascadeStateStore.get_interaction",
      "type": "contains",
      "label": "方法 get_interaction"
    },
    {
      "id": "edge:0bd05dcf",
      "source": "class:CascadeStateStore",
      "target": "func:CascadeStateStore.set_depth",
      "type": "contains",
      "label": "方法 set_depth"
    },
    {
      "id": "edge:d0d5e0ae",
      "source": "class:CascadeStateStore",
      "target": "func:CascadeStateStore.get_depth",
      "type": "contains",
      "label": "方法 get_depth"
    },
    {
      "id": "edge:733aac5c",
      "source": "class:CascadeStateStore",
      "target": "func:CascadeStateStore.reset",
      "type": "contains",
      "label": "方法 reset"
    },
    {
      "id": "edge:48b6672a",
      "source": "file:src/agentkit/quality/cascade_state_store.py",
      "target": "class:InMemoryCascadeStateStore",
      "type": "contains",
      "label": "定义类 InMemoryCascadeStateStore"
    },
    {
      "id": "edge:dc83c31a",
      "source": "class:InMemoryCascadeStateStore",
      "target": "func:InMemoryCascadeStateStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c065dd54",
      "source": "class:InMemoryCascadeStateStore",
      "target": "func:InMemoryCascadeStateStore._is_expired",
      "type": "contains",
      "label": "方法 _is_expired"
    },
    {
      "id": "edge:2a9fd9f8",
      "source": "class:InMemoryCascadeStateStore",
      "target": "func:InMemoryCascadeStateStore._cleanup_expired",
      "type": "contains",
      "label": "方法 _cleanup_expired"
    },
    {
      "id": "edge:8ab0bffb",
      "source": "class:InMemoryCascadeStateStore",
      "target": "func:InMemoryCascadeStateStore._touch",
      "type": "contains",
      "label": "方法 _touch"
    },
    {
      "id": "edge:a82f9e4b",
      "source": "class:InMemoryCascadeStateStore",
      "target": "func:InMemoryCascadeStateStore.increment_interaction",
      "type": "contains",
      "label": "方法 increment_interaction"
    },
    {
      "id": "edge:52df2d2b",
      "source": "class:InMemoryCascadeStateStore",
      "target": "func:InMemoryCascadeStateStore.get_interaction",
      "type": "contains",
      "label": "方法 get_interaction"
    },
    {
      "id": "edge:c495164e",
      "source": "class:InMemoryCascadeStateStore",
      "target": "func:InMemoryCascadeStateStore.set_depth",
      "type": "contains",
      "label": "方法 set_depth"
    },
    {
      "id": "edge:6537a121",
      "source": "class:InMemoryCascadeStateStore",
      "target": "func:InMemoryCascadeStateStore.get_depth",
      "type": "contains",
      "label": "方法 get_depth"
    },
    {
      "id": "edge:d43247de",
      "source": "class:InMemoryCascadeStateStore",
      "target": "func:InMemoryCascadeStateStore.reset",
      "type": "contains",
      "label": "方法 reset"
    },
    {
      "id": "edge:2061e55b",
      "source": "file:src/agentkit/quality/cascade_state_store.py",
      "target": "class:RedisCascadeStateStore",
      "type": "contains",
      "label": "定义类 RedisCascadeStateStore"
    },
    {
      "id": "edge:f630c2df",
      "source": "class:RedisCascadeStateStore",
      "target": "func:RedisCascadeStateStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:d21d631d",
      "source": "class:RedisCascadeStateStore",
      "target": "func:RedisCascadeStateStore._get_sync_redis",
      "type": "contains",
      "label": "方法 _get_sync_redis"
    },
    {
      "id": "edge:f90735ba",
      "source": "class:RedisCascadeStateStore",
      "target": "func:RedisCascadeStateStore._degrade_to_fallback",
      "type": "contains",
      "label": "方法 _degrade_to_fallback"
    },
    {
      "id": "edge:24af9801",
      "source": "class:RedisCascadeStateStore",
      "target": "func:RedisCascadeStateStore.increment_interaction",
      "type": "contains",
      "label": "方法 increment_interaction"
    },
    {
      "id": "edge:77e122ba",
      "source": "class:RedisCascadeStateStore",
      "target": "func:RedisCascadeStateStore.get_interaction",
      "type": "contains",
      "label": "方法 get_interaction"
    },
    {
      "id": "edge:22e83d66",
      "source": "class:RedisCascadeStateStore",
      "target": "func:RedisCascadeStateStore.set_depth",
      "type": "contains",
      "label": "方法 set_depth"
    },
    {
      "id": "edge:ef6b550e",
      "source": "class:RedisCascadeStateStore",
      "target": "func:RedisCascadeStateStore.get_depth",
      "type": "contains",
      "label": "方法 get_depth"
    },
    {
      "id": "edge:ae0efa80",
      "source": "class:RedisCascadeStateStore",
      "target": "func:RedisCascadeStateStore.reset",
      "type": "contains",
      "label": "方法 reset"
    },
    {
      "id": "edge:e5c2fdf9",
      "source": "class:RedisCascadeStateStore",
      "target": "func:RedisCascadeStateStore.close",
      "type": "contains",
      "label": "方法 close"
    },
    {
      "id": "edge:d668d863",
      "source": "file:src/agentkit/quality/gate.py",
      "target": "class:QualityCheck",
      "type": "contains",
      "label": "定义类 QualityCheck"
    },
    {
      "id": "edge:5535d5d8",
      "source": "file:src/agentkit/quality/gate.py",
      "target": "class:QualityResult",
      "type": "contains",
      "label": "定义类 QualityResult"
    },
    {
      "id": "edge:8c765be8",
      "source": "file:src/agentkit/quality/gate.py",
      "target": "class:QualityGate",
      "type": "contains",
      "label": "定义类 QualityGate"
    },
    {
      "id": "edge:6d308dfa",
      "source": "class:QualityGate",
      "target": "func:QualityGate.validate",
      "type": "contains",
      "label": "方法 validate"
    },
    {
      "id": "edge:2b784a1c",
      "source": "class:QualityGate",
      "target": "func:QualityGate._import_validator",
      "type": "contains",
      "label": "方法 _import_validator"
    },
    {
      "id": "edge:e37e3505",
      "source": "file:src/agentkit/quality/output.py",
      "target": "class:OutputMetadata",
      "type": "contains",
      "label": "定义类 OutputMetadata"
    },
    {
      "id": "edge:bc188d4c",
      "source": "file:src/agentkit/quality/output.py",
      "target": "class:StandardOutput",
      "type": "contains",
      "label": "定义类 StandardOutput"
    },
    {
      "id": "edge:6b3e3174",
      "source": "file:src/agentkit/quality/output.py",
      "target": "class:OutputStandardizer",
      "type": "contains",
      "label": "定义类 OutputStandardizer"
    },
    {
      "id": "edge:d296101e",
      "source": "class:OutputStandardizer",
      "target": "func:OutputStandardizer.standardize",
      "type": "contains",
      "label": "方法 standardize"
    },
    {
      "id": "edge:c804a9df",
      "source": "class:OutputStandardizer",
      "target": "func:OutputStandardizer._validate_schema",
      "type": "contains",
      "label": "方法 _validate_schema"
    },
    {
      "id": "edge:26fea82b",
      "source": "class:OutputStandardizer",
      "target": "func:OutputStandardizer._normalize_types",
      "type": "contains",
      "label": "方法 _normalize_types"
    },
    {
      "id": "edge:c2a4c129",
      "source": "class:OutputStandardizer",
      "target": "func:OutputStandardizer._calculate_quality_score",
      "type": "contains",
      "label": "方法 _calculate_quality_score"
    },
    {
      "id": "edge:90e7a257",
      "source": "file:src/agentkit/router/intent.py",
      "target": "class:RoutingResult",
      "type": "contains",
      "label": "定义类 RoutingResult"
    },
    {
      "id": "edge:8018aab5",
      "source": "file:src/agentkit/router/intent.py",
      "target": "class:IntentRouter",
      "type": "contains",
      "label": "定义类 IntentRouter"
    },
    {
      "id": "edge:97b22355",
      "source": "class:IntentRouter",
      "target": "func:IntentRouter.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:15b7d832",
      "source": "class:IntentRouter",
      "target": "func:IntentRouter.route",
      "type": "contains",
      "label": "方法 route"
    },
    {
      "id": "edge:2f079a06",
      "source": "class:IntentRouter",
      "target": "func:IntentRouter._match_keywords",
      "type": "contains",
      "label": "方法 _match_keywords"
    },
    {
      "id": "edge:4b33257e",
      "source": "class:IntentRouter",
      "target": "func:IntentRouter._classify_with_llm",
      "type": "contains",
      "label": "方法 _classify_with_llm"
    },
    {
      "id": "edge:0a7b2c8a",
      "source": "class:IntentRouter",
      "target": "func:IntentRouter._build_classification_prompt",
      "type": "contains",
      "label": "方法 _build_classification_prompt"
    },
    {
      "id": "edge:170ead26",
      "source": "class:IntentRouter",
      "target": "func:IntentRouter._parse_llm_response",
      "type": "contains",
      "label": "方法 _parse_llm_response"
    },
    {
      "id": "edge:25279d86",
      "source": "class:IntentRouter",
      "target": "func:IntentRouter._extract_skill_name_from_text",
      "type": "contains",
      "label": "方法 _extract_skill_name_from_text"
    },
    {
      "id": "edge:0dbb51ab",
      "source": "class:IntentRouter",
      "target": "func:IntentRouter._extract_string_values",
      "type": "contains",
      "label": "方法 _extract_string_values"
    },
    {
      "id": "edge:ec7b39a6",
      "source": "file:src/agentkit/server/client.py",
      "target": "class:AgentKitClient",
      "type": "contains",
      "label": "定义类 AgentKitClient"
    },
    {
      "id": "edge:47286016",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:332d0bf9",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.create_agent",
      "type": "contains",
      "label": "方法 create_agent"
    },
    {
      "id": "edge:821db207",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.list_agents",
      "type": "contains",
      "label": "方法 list_agents"
    },
    {
      "id": "edge:35b2e7da",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.get_agent",
      "type": "contains",
      "label": "方法 get_agent"
    },
    {
      "id": "edge:d468fd2d",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.delete_agent",
      "type": "contains",
      "label": "方法 delete_agent"
    },
    {
      "id": "edge:717e9ca4",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.submit_task",
      "type": "contains",
      "label": "方法 submit_task"
    },
    {
      "id": "edge:39cbdffb",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.register_skill",
      "type": "contains",
      "label": "方法 register_skill"
    },
    {
      "id": "edge:b9382703",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.list_skills",
      "type": "contains",
      "label": "方法 list_skills"
    },
    {
      "id": "edge:53269af5",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.get_usage",
      "type": "contains",
      "label": "方法 get_usage"
    },
    {
      "id": "edge:7bf9339a",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.health",
      "type": "contains",
      "label": "方法 health"
    },
    {
      "id": "edge:2baeee3f",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.submit_task_async",
      "type": "contains",
      "label": "方法 submit_task_async"
    },
    {
      "id": "edge:27acfe75",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.get_task_status",
      "type": "contains",
      "label": "方法 get_task_status"
    },
    {
      "id": "edge:eaf6d98f",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.cancel_task",
      "type": "contains",
      "label": "方法 cancel_task"
    },
    {
      "id": "edge:9f649d66",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.list_tasks",
      "type": "contains",
      "label": "方法 list_tasks"
    },
    {
      "id": "edge:454bee9f",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.stream_task",
      "type": "contains",
      "label": "方法 stream_task"
    },
    {
      "id": "edge:4acfca91",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.close",
      "type": "contains",
      "label": "方法 close"
    },
    {
      "id": "edge:679001b4",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.__aenter__",
      "type": "contains",
      "label": "方法 __aenter__"
    },
    {
      "id": "edge:f38c0c68",
      "source": "class:AgentKitClient",
      "target": "func:AgentKitClient.__aexit__",
      "type": "contains",
      "label": "方法 __aexit__"
    },
    {
      "id": "edge:f3b18b6d",
      "source": "file:src/agentkit/server/client_config.py",
      "target": "class:ClientConfig",
      "type": "contains",
      "label": "定义类 ClientConfig"
    },
    {
      "id": "edge:a64033df",
      "source": "class:ClientConfig",
      "target": "func:ClientConfig.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:9d43abcb",
      "source": "class:ClientConfig",
      "target": "func:ClientConfig.clients",
      "type": "contains",
      "label": "方法 clients"
    },
    {
      "id": "edge:5d8a7ff2",
      "source": "class:ClientConfig",
      "target": "func:ClientConfig._load_clients",
      "type": "contains",
      "label": "方法 _load_clients"
    },
    {
      "id": "edge:a2be3513",
      "source": "class:ClientConfig",
      "target": "func:ClientConfig.reload",
      "type": "contains",
      "label": "方法 reload"
    },
    {
      "id": "edge:16619143",
      "source": "class:ClientConfig",
      "target": "func:ClientConfig.identify_client",
      "type": "contains",
      "label": "方法 identify_client"
    },
    {
      "id": "edge:bda121d1",
      "source": "class:ClientConfig",
      "target": "func:ClientConfig.get_client_config",
      "type": "contains",
      "label": "方法 get_client_config"
    },
    {
      "id": "edge:8ef74121",
      "source": "class:ClientConfig",
      "target": "func:ClientConfig.get_skills_dir",
      "type": "contains",
      "label": "方法 get_skills_dir"
    },
    {
      "id": "edge:90466a04",
      "source": "class:ClientConfig",
      "target": "func:ClientConfig._load_default_config",
      "type": "contains",
      "label": "方法 _load_default_config"
    },
    {
      "id": "edge:673678ed",
      "source": "class:ClientConfig",
      "target": "func:ClientConfig.validate_api_key",
      "type": "contains",
      "label": "方法 validate_api_key"
    },
    {
      "id": "edge:d5ef810d",
      "source": "file:src/agentkit/server/routes/agents.py",
      "target": "class:CreateAgentRequest",
      "type": "contains",
      "label": "定义类 CreateAgentRequest"
    },
    {
      "id": "edge:188a8a9b",
      "source": "file:src/agentkit/server/routes/evolution.py",
      "target": "class:TriggerEvolutionRequest",
      "type": "contains",
      "label": "定义类 TriggerEvolutionRequest"
    },
    {
      "id": "edge:2eed2d4f",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "class:DashboardExperience",
      "type": "contains",
      "label": "定义类 DashboardExperience"
    },
    {
      "id": "edge:972a1a0e",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "class:DashboardOptimization",
      "type": "contains",
      "label": "定义类 DashboardOptimization"
    },
    {
      "id": "edge:92840bcf",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "class:RecordExperienceRequest",
      "type": "contains",
      "label": "定义类 RecordExperienceRequest"
    },
    {
      "id": "edge:eed3662a",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "class:RecordOptimizationRequest",
      "type": "contains",
      "label": "定义类 RecordOptimizationRequest"
    },
    {
      "id": "edge:421342d7",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "class:UsageRecordResponse",
      "type": "contains",
      "label": "定义类 UsageRecordResponse"
    },
    {
      "id": "edge:2a2ea336",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "class:UsageSummaryResponse",
      "type": "contains",
      "label": "定义类 UsageSummaryResponse"
    },
    {
      "id": "edge:99b6e04e",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "class:KnowledgeSource",
      "type": "contains",
      "label": "定义类 KnowledgeSource"
    },
    {
      "id": "edge:e484f3d5",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "class:UploadedDocument",
      "type": "contains",
      "label": "定义类 UploadedDocument"
    },
    {
      "id": "edge:f76a9e77",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "class:KnowledgeSourceStore",
      "type": "contains",
      "label": "定义类 KnowledgeSourceStore"
    },
    {
      "id": "edge:531b0892",
      "source": "class:KnowledgeSourceStore",
      "target": "func:KnowledgeSourceStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:0409668a",
      "source": "class:KnowledgeSourceStore",
      "target": "func:KnowledgeSourceStore.add_source",
      "type": "contains",
      "label": "方法 add_source"
    },
    {
      "id": "edge:be3fc3b5",
      "source": "class:KnowledgeSourceStore",
      "target": "func:KnowledgeSourceStore.get_source",
      "type": "contains",
      "label": "方法 get_source"
    },
    {
      "id": "edge:07cc1c66",
      "source": "class:KnowledgeSourceStore",
      "target": "func:KnowledgeSourceStore.remove_source",
      "type": "contains",
      "label": "方法 remove_source"
    },
    {
      "id": "edge:a3ed3e49",
      "source": "class:KnowledgeSourceStore",
      "target": "func:KnowledgeSourceStore.list_sources",
      "type": "contains",
      "label": "方法 list_sources"
    },
    {
      "id": "edge:3e914c39",
      "source": "class:KnowledgeSourceStore",
      "target": "func:KnowledgeSourceStore.add_document",
      "type": "contains",
      "label": "方法 add_document"
    },
    {
      "id": "edge:432f36e7",
      "source": "class:KnowledgeSourceStore",
      "target": "func:KnowledgeSourceStore.list_documents",
      "type": "contains",
      "label": "方法 list_documents"
    },
    {
      "id": "edge:036c56aa",
      "source": "class:KnowledgeSourceStore",
      "target": "func:KnowledgeSourceStore.delete_document",
      "type": "contains",
      "label": "方法 delete_document"
    },
    {
      "id": "edge:43034e26",
      "source": "class:KnowledgeSourceStore",
      "target": "func:KnowledgeSourceStore.update_source",
      "type": "contains",
      "label": "方法 update_source"
    },
    {
      "id": "edge:b4475c27",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "class:AddSourceRequest",
      "type": "contains",
      "label": "定义类 AddSourceRequest"
    },
    {
      "id": "edge:a626f8c0",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "class:SearchRequest",
      "type": "contains",
      "label": "定义类 SearchRequest"
    },
    {
      "id": "edge:6df8d487",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "class:SearchResult",
      "type": "contains",
      "label": "定义类 SearchResult"
    },
    {
      "id": "edge:7ac7dcff",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "class:UpdateSourceRequest",
      "type": "contains",
      "label": "定义类 UpdateSourceRequest"
    },
    {
      "id": "edge:e141af06",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "class:ChatMessage",
      "type": "contains",
      "label": "定义类 ChatMessage"
    },
    {
      "id": "edge:17b44d9c",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "class:Conversation",
      "type": "contains",
      "label": "定义类 Conversation"
    },
    {
      "id": "edge:c7ead0f7",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "class:ConversationStore",
      "type": "contains",
      "label": "定义类 ConversationStore"
    },
    {
      "id": "edge:bb8141f0",
      "source": "class:ConversationStore",
      "target": "func:ConversationStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:a7df5c34",
      "source": "class:ConversationStore",
      "target": "func:ConversationStore.get_or_create",
      "type": "contains",
      "label": "方法 get_or_create"
    },
    {
      "id": "edge:e154906b",
      "source": "class:ConversationStore",
      "target": "func:ConversationStore.add_message",
      "type": "contains",
      "label": "方法 add_message"
    },
    {
      "id": "edge:0179be41",
      "source": "class:ConversationStore",
      "target": "func:ConversationStore.get_history",
      "type": "contains",
      "label": "方法 get_history"
    },
    {
      "id": "edge:a15a731f",
      "source": "class:ConversationStore",
      "target": "func:ConversationStore.list_conversations",
      "type": "contains",
      "label": "方法 list_conversations"
    },
    {
      "id": "edge:c33fb038",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "class:ChatRequest",
      "type": "contains",
      "label": "定义类 ChatRequest"
    },
    {
      "id": "edge:39da012c",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "class:ChatResponse",
      "type": "contains",
      "label": "定义类 ChatResponse"
    },
    {
      "id": "edge:9565ada2",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "class:CapabilityInfo",
      "type": "contains",
      "label": "定义类 CapabilityInfo"
    },
    {
      "id": "edge:8570a3ea",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "class:CapabilitiesResponse",
      "type": "contains",
      "label": "定义类 CapabilitiesResponse"
    },
    {
      "id": "edge:38fe95e8",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "class:LlmProviderResponse",
      "type": "contains",
      "label": "定义类 LlmProviderResponse"
    },
    {
      "id": "edge:b3239b16",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "class:LlmConfigResponse",
      "type": "contains",
      "label": "定义类 LlmConfigResponse"
    },
    {
      "id": "edge:fa69efb6",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "class:LlmProviderUpdate",
      "type": "contains",
      "label": "定义类 LlmProviderUpdate"
    },
    {
      "id": "edge:f925d4b0",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "class:LlmConfigUpdate",
      "type": "contains",
      "label": "定义类 LlmConfigUpdate"
    },
    {
      "id": "edge:220e43f9",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "class:SkillsConfigResponse",
      "type": "contains",
      "label": "定义类 SkillsConfigResponse"
    },
    {
      "id": "edge:97f0f72f",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "class:SkillsConfigUpdate",
      "type": "contains",
      "label": "定义类 SkillsConfigUpdate"
    },
    {
      "id": "edge:da47169c",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "class:KbConfigResponse",
      "type": "contains",
      "label": "定义类 KbConfigResponse"
    },
    {
      "id": "edge:68038eb3",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "class:KbConfigUpdate",
      "type": "contains",
      "label": "定义类 KbConfigUpdate"
    },
    {
      "id": "edge:dffd3b3e",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "class:GeneralConfigResponse",
      "type": "contains",
      "label": "定义类 GeneralConfigResponse"
    },
    {
      "id": "edge:96b2169d",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "class:GeneralConfigUpdate",
      "type": "contains",
      "label": "定义类 GeneralConfigUpdate"
    },
    {
      "id": "edge:cd2778eb",
      "source": "file:src/agentkit/server/routes/skill_management.py",
      "target": "class:SkillInfo",
      "type": "contains",
      "label": "定义类 SkillInfo"
    },
    {
      "id": "edge:0cf3ffb9",
      "source": "file:src/agentkit/server/routes/skill_management.py",
      "target": "class:SkillDetail",
      "type": "contains",
      "label": "定义类 SkillDetail"
    },
    {
      "id": "edge:9d223cb1",
      "source": "file:src/agentkit/server/routes/skill_management.py",
      "target": "class:CapabilityInfo",
      "type": "contains",
      "label": "定义类 CapabilityInfo"
    },
    {
      "id": "edge:8de2a295",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "class:RegisterSkillRequest",
      "type": "contains",
      "label": "定义类 RegisterSkillRequest"
    },
    {
      "id": "edge:4ca71048",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "class:CreatePipelineRequest",
      "type": "contains",
      "label": "定义类 CreatePipelineRequest"
    },
    {
      "id": "edge:6702dd9a",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "class:ExecutePipelineRequest",
      "type": "contains",
      "label": "定义类 ExecutePipelineRequest"
    },
    {
      "id": "edge:1518c887",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "class:InstallSkillRequest",
      "type": "contains",
      "label": "定义类 InstallSkillRequest"
    },
    {
      "id": "edge:4e9d66c2",
      "source": "file:src/agentkit/server/routes/tasks.py",
      "target": "class:SubmitTaskRequest",
      "type": "contains",
      "label": "定义类 SubmitTaskRequest"
    },
    {
      "id": "edge:188396af",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "class:TerminalSessionState",
      "type": "contains",
      "label": "定义类 TerminalSessionState"
    },
    {
      "id": "edge:255479c6",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "class:ExecuteRequest",
      "type": "contains",
      "label": "定义类 ExecuteRequest"
    },
    {
      "id": "edge:8b8b3026",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "class:ExecuteResponse",
      "type": "contains",
      "label": "定义类 ExecuteResponse"
    },
    {
      "id": "edge:0e602414",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "class:SessionInfo",
      "type": "contains",
      "label": "定义类 SessionInfo"
    },
    {
      "id": "edge:afc1fea0",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "class:HistoryResponse",
      "type": "contains",
      "label": "定义类 HistoryResponse"
    },
    {
      "id": "edge:20351b59",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "class:WorkflowStore",
      "type": "contains",
      "label": "定义类 WorkflowStore"
    },
    {
      "id": "edge:9f79a28a",
      "source": "class:WorkflowStore",
      "target": "func:WorkflowStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c057d778",
      "source": "class:WorkflowStore",
      "target": "func:WorkflowStore._evict_execution",
      "type": "contains",
      "label": "方法 _evict_execution"
    },
    {
      "id": "edge:b9d28979",
      "source": "class:WorkflowStore",
      "target": "func:WorkflowStore.save",
      "type": "contains",
      "label": "方法 save"
    },
    {
      "id": "edge:c113aade",
      "source": "class:WorkflowStore",
      "target": "func:WorkflowStore.get",
      "type": "contains",
      "label": "方法 get"
    },
    {
      "id": "edge:2d41839d",
      "source": "class:WorkflowStore",
      "target": "func:WorkflowStore.list",
      "type": "contains",
      "label": "方法 list"
    },
    {
      "id": "edge:9d059727",
      "source": "class:WorkflowStore",
      "target": "func:WorkflowStore.delete",
      "type": "contains",
      "label": "方法 delete"
    },
    {
      "id": "edge:69c7636c",
      "source": "class:WorkflowStore",
      "target": "func:WorkflowStore.create_execution",
      "type": "contains",
      "label": "方法 create_execution"
    },
    {
      "id": "edge:53d9390c",
      "source": "class:WorkflowStore",
      "target": "func:WorkflowStore.get_execution",
      "type": "contains",
      "label": "方法 get_execution"
    },
    {
      "id": "edge:c7ec7e22",
      "source": "class:WorkflowStore",
      "target": "func:WorkflowStore.update_execution",
      "type": "contains",
      "label": "方法 update_execution"
    },
    {
      "id": "edge:588afe65",
      "source": "class:WorkflowStore",
      "target": "func:WorkflowStore.get_execution_lock",
      "type": "contains",
      "label": "方法 get_execution_lock"
    },
    {
      "id": "edge:50910196",
      "source": "class:WorkflowStore",
      "target": "func:WorkflowStore.list_executions",
      "type": "contains",
      "label": "方法 list_executions"
    },
    {
      "id": "edge:05183380",
      "source": "file:src/agentkit/server/routes/ws.py",
      "target": "class:ConnectionManager",
      "type": "contains",
      "label": "定义类 ConnectionManager"
    },
    {
      "id": "edge:3f533ce1",
      "source": "class:ConnectionManager",
      "target": "func:ConnectionManager.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:3b35aa0b",
      "source": "class:ConnectionManager",
      "target": "func:ConnectionManager.add",
      "type": "contains",
      "label": "方法 add"
    },
    {
      "id": "edge:892ccda5",
      "source": "class:ConnectionManager",
      "target": "func:ConnectionManager.remove",
      "type": "contains",
      "label": "方法 remove"
    },
    {
      "id": "edge:05adcaf6",
      "source": "class:ConnectionManager",
      "target": "func:ConnectionManager.get_tokens",
      "type": "contains",
      "label": "方法 get_tokens"
    },
    {
      "id": "edge:fa082ad0",
      "source": "class:ConnectionManager",
      "target": "func:ConnectionManager.broadcast",
      "type": "contains",
      "label": "方法 broadcast"
    },
    {
      "id": "edge:97416d6c",
      "source": "class:ConnectionManager",
      "target": "func:ConnectionManager.has_connections",
      "type": "contains",
      "label": "方法 has_connections"
    },
    {
      "id": "edge:81031bba",
      "source": "file:src/agentkit/server/runner.py",
      "target": "class:BackgroundRunner",
      "type": "contains",
      "label": "定义类 BackgroundRunner"
    },
    {
      "id": "edge:59f77a24",
      "source": "class:BackgroundRunner",
      "target": "func:BackgroundRunner.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:b2d5741c",
      "source": "class:BackgroundRunner",
      "target": "func:BackgroundRunner.active_count",
      "type": "contains",
      "label": "方法 active_count"
    },
    {
      "id": "edge:dd859e1e",
      "source": "class:BackgroundRunner",
      "target": "func:BackgroundRunner.submit",
      "type": "contains",
      "label": "方法 submit"
    },
    {
      "id": "edge:4f7837f4",
      "source": "class:BackgroundRunner",
      "target": "func:BackgroundRunner._run_task",
      "type": "contains",
      "label": "方法 _run_task"
    },
    {
      "id": "edge:3a5a5bb4",
      "source": "class:BackgroundRunner",
      "target": "func:BackgroundRunner.cancel",
      "type": "contains",
      "label": "方法 cancel"
    },
    {
      "id": "edge:8b5cde71",
      "source": "file:src/agentkit/server/task_store.py",
      "target": "class:TaskRecord",
      "type": "contains",
      "label": "定义类 TaskRecord"
    },
    {
      "id": "edge:eea85b92",
      "source": "class:TaskRecord",
      "target": "func:TaskRecord.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:7fc32d57",
      "source": "class:TaskRecord",
      "target": "func:TaskRecord.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:47dcf12c",
      "source": "file:src/agentkit/server/task_store.py",
      "target": "class:InMemoryTaskStore",
      "type": "contains",
      "label": "定义类 InMemoryTaskStore"
    },
    {
      "id": "edge:46014e29",
      "source": "class:InMemoryTaskStore",
      "target": "func:InMemoryTaskStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:322ab182",
      "source": "class:InMemoryTaskStore",
      "target": "func:InMemoryTaskStore.backend_type",
      "type": "contains",
      "label": "方法 backend_type"
    },
    {
      "id": "edge:7c80cd33",
      "source": "class:InMemoryTaskStore",
      "target": "func:InMemoryTaskStore.start_cleanup",
      "type": "contains",
      "label": "方法 start_cleanup"
    },
    {
      "id": "edge:af636470",
      "source": "class:InMemoryTaskStore",
      "target": "func:InMemoryTaskStore.stop_cleanup",
      "type": "contains",
      "label": "方法 stop_cleanup"
    },
    {
      "id": "edge:760faf2a",
      "source": "class:InMemoryTaskStore",
      "target": "func:InMemoryTaskStore._cleanup_loop",
      "type": "contains",
      "label": "方法 _cleanup_loop"
    },
    {
      "id": "edge:8c88ceb6",
      "source": "class:InMemoryTaskStore",
      "target": "func:InMemoryTaskStore._cleanup_expired",
      "type": "contains",
      "label": "方法 _cleanup_expired"
    },
    {
      "id": "edge:559dd29c",
      "source": "class:InMemoryTaskStore",
      "target": "func:InMemoryTaskStore.create",
      "type": "contains",
      "label": "方法 create"
    },
    {
      "id": "edge:40d7edaa",
      "source": "class:InMemoryTaskStore",
      "target": "func:InMemoryTaskStore.get",
      "type": "contains",
      "label": "方法 get"
    },
    {
      "id": "edge:a81ce355",
      "source": "class:InMemoryTaskStore",
      "target": "func:InMemoryTaskStore.update_status",
      "type": "contains",
      "label": "方法 update_status"
    },
    {
      "id": "edge:1000029d",
      "source": "class:InMemoryTaskStore",
      "target": "func:InMemoryTaskStore.list_tasks",
      "type": "contains",
      "label": "方法 list_tasks"
    },
    {
      "id": "edge:62402d48",
      "source": "class:InMemoryTaskStore",
      "target": "func:InMemoryTaskStore.count_by_status",
      "type": "contains",
      "label": "方法 count_by_status"
    },
    {
      "id": "edge:e4b48936",
      "source": "class:InMemoryTaskStore",
      "target": "func:InMemoryTaskStore.size",
      "type": "contains",
      "label": "方法 size"
    },
    {
      "id": "edge:6f713d13",
      "source": "class:InMemoryTaskStore",
      "target": "func:InMemoryTaskStore.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:f68b4edc",
      "source": "file:src/agentkit/server/task_store.py",
      "target": "class:RedisTaskStore",
      "type": "contains",
      "label": "定义类 RedisTaskStore"
    },
    {
      "id": "edge:da172bb2",
      "source": "class:RedisTaskStore",
      "target": "func:RedisTaskStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:68222002",
      "source": "class:RedisTaskStore",
      "target": "func:RedisTaskStore.backend_type",
      "type": "contains",
      "label": "方法 backend_type"
    },
    {
      "id": "edge:0cf91e21",
      "source": "class:RedisTaskStore",
      "target": "func:RedisTaskStore._get_redis",
      "type": "contains",
      "label": "方法 _get_redis"
    },
    {
      "id": "edge:7b610cb4",
      "source": "class:RedisTaskStore",
      "target": "func:RedisTaskStore._key",
      "type": "contains",
      "label": "方法 _key"
    },
    {
      "id": "edge:f3cfa452",
      "source": "class:RedisTaskStore",
      "target": "func:RedisTaskStore.start_cleanup",
      "type": "contains",
      "label": "方法 start_cleanup"
    },
    {
      "id": "edge:7bfe87f0",
      "source": "class:RedisTaskStore",
      "target": "func:RedisTaskStore.stop_cleanup",
      "type": "contains",
      "label": "方法 stop_cleanup"
    },
    {
      "id": "edge:aeafa262",
      "source": "class:RedisTaskStore",
      "target": "func:RedisTaskStore.create",
      "type": "contains",
      "label": "方法 create"
    },
    {
      "id": "edge:7d482683",
      "source": "class:RedisTaskStore",
      "target": "func:RedisTaskStore.get",
      "type": "contains",
      "label": "方法 get"
    },
    {
      "id": "edge:65791072",
      "source": "class:RedisTaskStore",
      "target": "func:RedisTaskStore.update_status",
      "type": "contains",
      "label": "方法 update_status"
    },
    {
      "id": "edge:29809c38",
      "source": "class:RedisTaskStore",
      "target": "func:RedisTaskStore.list_tasks",
      "type": "contains",
      "label": "方法 list_tasks"
    },
    {
      "id": "edge:7aa8e9d4",
      "source": "class:RedisTaskStore",
      "target": "func:RedisTaskStore.count_by_status",
      "type": "contains",
      "label": "方法 count_by_status"
    },
    {
      "id": "edge:76f668d5",
      "source": "class:RedisTaskStore",
      "target": "func:RedisTaskStore.size",
      "type": "contains",
      "label": "方法 size"
    },
    {
      "id": "edge:001d6d79",
      "source": "class:RedisTaskStore",
      "target": "func:RedisTaskStore.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:30137f8a",
      "source": "class:RedisTaskStore",
      "target": "func:RedisTaskStore._count_keys",
      "type": "contains",
      "label": "方法 _count_keys"
    },
    {
      "id": "edge:58fdaaf4",
      "source": "class:RedisTaskStore",
      "target": "func:RedisTaskStore._evict_oldest_completed",
      "type": "contains",
      "label": "方法 _evict_oldest_completed"
    },
    {
      "id": "edge:7d2dc287",
      "source": "file:src/agentkit/session/manager.py",
      "target": "class:AsyncWriteQueue",
      "type": "contains",
      "label": "定义类 AsyncWriteQueue"
    },
    {
      "id": "edge:cb4f846e",
      "source": "class:AsyncWriteQueue",
      "target": "func:AsyncWriteQueue.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:d476023e",
      "source": "class:AsyncWriteQueue",
      "target": "func:AsyncWriteQueue._ensure_started",
      "type": "contains",
      "label": "方法 _ensure_started"
    },
    {
      "id": "edge:014111f3",
      "source": "class:AsyncWriteQueue",
      "target": "func:AsyncWriteQueue._writer_loop",
      "type": "contains",
      "label": "方法 _writer_loop"
    },
    {
      "id": "edge:b00f333e",
      "source": "class:AsyncWriteQueue",
      "target": "func:AsyncWriteQueue.enqueue",
      "type": "contains",
      "label": "方法 enqueue"
    },
    {
      "id": "edge:fc4d243a",
      "source": "class:AsyncWriteQueue",
      "target": "func:AsyncWriteQueue.buffered_messages",
      "type": "contains",
      "label": "方法 buffered_messages"
    },
    {
      "id": "edge:fb65f131",
      "source": "class:AsyncWriteQueue",
      "target": "func:AsyncWriteQueue.pending_count",
      "type": "contains",
      "label": "方法 pending_count"
    },
    {
      "id": "edge:db05b514",
      "source": "class:AsyncWriteQueue",
      "target": "func:AsyncWriteQueue.flush",
      "type": "contains",
      "label": "方法 flush"
    },
    {
      "id": "edge:cdd82165",
      "source": "class:AsyncWriteQueue",
      "target": "func:AsyncWriteQueue.stop",
      "type": "contains",
      "label": "方法 stop"
    },
    {
      "id": "edge:812f2aa7",
      "source": "file:src/agentkit/session/manager.py",
      "target": "class:SessionManager",
      "type": "contains",
      "label": "定义类 SessionManager"
    },
    {
      "id": "edge:cc3e8239",
      "source": "class:SessionManager",
      "target": "func:SessionManager.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:975b472b",
      "source": "class:SessionManager",
      "target": "func:SessionManager.store",
      "type": "contains",
      "label": "方法 store"
    },
    {
      "id": "edge:bd3ef451",
      "source": "class:SessionManager",
      "target": "func:SessionManager.create_session",
      "type": "contains",
      "label": "方法 create_session"
    },
    {
      "id": "edge:bbb64e45",
      "source": "class:SessionManager",
      "target": "func:SessionManager.get_session",
      "type": "contains",
      "label": "方法 get_session"
    },
    {
      "id": "edge:afae6d0f",
      "source": "class:SessionManager",
      "target": "func:SessionManager.pause_session",
      "type": "contains",
      "label": "方法 pause_session"
    },
    {
      "id": "edge:043efee0",
      "source": "class:SessionManager",
      "target": "func:SessionManager.resume_session",
      "type": "contains",
      "label": "方法 resume_session"
    },
    {
      "id": "edge:c05a7f2e",
      "source": "class:SessionManager",
      "target": "func:SessionManager.close_session",
      "type": "contains",
      "label": "方法 close_session"
    },
    {
      "id": "edge:b71696eb",
      "source": "class:SessionManager",
      "target": "func:SessionManager.delete_session",
      "type": "contains",
      "label": "方法 delete_session"
    },
    {
      "id": "edge:02ea6098",
      "source": "class:SessionManager",
      "target": "func:SessionManager.list_sessions",
      "type": "contains",
      "label": "方法 list_sessions"
    },
    {
      "id": "edge:3e039971",
      "source": "class:SessionManager",
      "target": "func:SessionManager.append_message",
      "type": "contains",
      "label": "方法 append_message"
    },
    {
      "id": "edge:9b3cb203",
      "source": "class:SessionManager",
      "target": "func:SessionManager.get_messages",
      "type": "contains",
      "label": "方法 get_messages"
    },
    {
      "id": "edge:849ac081",
      "source": "class:SessionManager",
      "target": "func:SessionManager.get_chat_messages",
      "type": "contains",
      "label": "方法 get_chat_messages"
    },
    {
      "id": "edge:ea69e688",
      "source": "class:SessionManager",
      "target": "func:SessionManager.count_messages",
      "type": "contains",
      "label": "方法 count_messages"
    },
    {
      "id": "edge:f873fb83",
      "source": "class:SessionManager",
      "target": "func:SessionManager.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:1ef990c0",
      "source": "class:SessionManager",
      "target": "func:SessionManager.flush",
      "type": "contains",
      "label": "方法 flush"
    },
    {
      "id": "edge:7ea32657",
      "source": "class:SessionManager",
      "target": "func:SessionManager.close",
      "type": "contains",
      "label": "方法 close"
    },
    {
      "id": "edge:39241d84",
      "source": "file:src/agentkit/session/models.py",
      "target": "class:SessionStatus",
      "type": "contains",
      "label": "定义类 SessionStatus"
    },
    {
      "id": "edge:2b8ac030",
      "source": "file:src/agentkit/session/models.py",
      "target": "class:MessageRole",
      "type": "contains",
      "label": "定义类 MessageRole"
    },
    {
      "id": "edge:806e8f2c",
      "source": "file:src/agentkit/session/models.py",
      "target": "class:Message",
      "type": "contains",
      "label": "定义类 Message"
    },
    {
      "id": "edge:6956a84a",
      "source": "class:Message",
      "target": "func:Message.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:8ce9de6a",
      "source": "class:Message",
      "target": "func:Message.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:4ce9047d",
      "source": "class:Message",
      "target": "func:Message.to_chat_message",
      "type": "contains",
      "label": "方法 to_chat_message"
    },
    {
      "id": "edge:6dc56582",
      "source": "file:src/agentkit/session/models.py",
      "target": "class:Session",
      "type": "contains",
      "label": "定义类 Session"
    },
    {
      "id": "edge:ce904f6a",
      "source": "class:Session",
      "target": "func:Session.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:bcade8fe",
      "source": "class:Session",
      "target": "func:Session.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:5dd33cd5",
      "source": "class:Session",
      "target": "func:Session.new_session_id",
      "type": "contains",
      "label": "方法 new_session_id"
    },
    {
      "id": "edge:ee849052",
      "source": "class:Session",
      "target": "func:Session.new_message_id",
      "type": "contains",
      "label": "方法 new_message_id"
    },
    {
      "id": "edge:6b875149",
      "source": "file:src/agentkit/session/store.py",
      "target": "class:SessionStore",
      "type": "contains",
      "label": "定义类 SessionStore"
    },
    {
      "id": "edge:51236e8d",
      "source": "class:SessionStore",
      "target": "func:SessionStore.save_session",
      "type": "contains",
      "label": "方法 save_session"
    },
    {
      "id": "edge:e6e77785",
      "source": "class:SessionStore",
      "target": "func:SessionStore.get_session",
      "type": "contains",
      "label": "方法 get_session"
    },
    {
      "id": "edge:6d0d91f5",
      "source": "class:SessionStore",
      "target": "func:SessionStore.update_session_status",
      "type": "contains",
      "label": "方法 update_session_status"
    },
    {
      "id": "edge:53e0f0a0",
      "source": "class:SessionStore",
      "target": "func:SessionStore.delete_session",
      "type": "contains",
      "label": "方法 delete_session"
    },
    {
      "id": "edge:84f3b874",
      "source": "class:SessionStore",
      "target": "func:SessionStore.list_sessions",
      "type": "contains",
      "label": "方法 list_sessions"
    },
    {
      "id": "edge:58a64daf",
      "source": "class:SessionStore",
      "target": "func:SessionStore.append_message",
      "type": "contains",
      "label": "方法 append_message"
    },
    {
      "id": "edge:155208de",
      "source": "class:SessionStore",
      "target": "func:SessionStore.get_messages",
      "type": "contains",
      "label": "方法 get_messages"
    },
    {
      "id": "edge:84a39fae",
      "source": "class:SessionStore",
      "target": "func:SessionStore.count_messages",
      "type": "contains",
      "label": "方法 count_messages"
    },
    {
      "id": "edge:cdfb429a",
      "source": "class:SessionStore",
      "target": "func:SessionStore.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:d89a459c",
      "source": "file:src/agentkit/session/store.py",
      "target": "class:InMemorySessionStore",
      "type": "contains",
      "label": "定义类 InMemorySessionStore"
    },
    {
      "id": "edge:3374ff5a",
      "source": "class:InMemorySessionStore",
      "target": "func:InMemorySessionStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:8a421446",
      "source": "class:InMemorySessionStore",
      "target": "func:InMemorySessionStore.save_session",
      "type": "contains",
      "label": "方法 save_session"
    },
    {
      "id": "edge:343abcb3",
      "source": "class:InMemorySessionStore",
      "target": "func:InMemorySessionStore.get_session",
      "type": "contains",
      "label": "方法 get_session"
    },
    {
      "id": "edge:f97fa7c0",
      "source": "class:InMemorySessionStore",
      "target": "func:InMemorySessionStore.update_session_status",
      "type": "contains",
      "label": "方法 update_session_status"
    },
    {
      "id": "edge:65181e9e",
      "source": "class:InMemorySessionStore",
      "target": "func:InMemorySessionStore.delete_session",
      "type": "contains",
      "label": "方法 delete_session"
    },
    {
      "id": "edge:ab160b3b",
      "source": "class:InMemorySessionStore",
      "target": "func:InMemorySessionStore.list_sessions",
      "type": "contains",
      "label": "方法 list_sessions"
    },
    {
      "id": "edge:266e20c1",
      "source": "class:InMemorySessionStore",
      "target": "func:InMemorySessionStore.append_message",
      "type": "contains",
      "label": "方法 append_message"
    },
    {
      "id": "edge:446a3a2b",
      "source": "class:InMemorySessionStore",
      "target": "func:InMemorySessionStore.get_messages",
      "type": "contains",
      "label": "方法 get_messages"
    },
    {
      "id": "edge:c6dcaa49",
      "source": "class:InMemorySessionStore",
      "target": "func:InMemorySessionStore.count_messages",
      "type": "contains",
      "label": "方法 count_messages"
    },
    {
      "id": "edge:2e50a62a",
      "source": "class:InMemorySessionStore",
      "target": "func:InMemorySessionStore.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:3d731cbe",
      "source": "file:src/agentkit/session/store.py",
      "target": "class:RedisSessionStore",
      "type": "contains",
      "label": "定义类 RedisSessionStore"
    },
    {
      "id": "edge:997af24f",
      "source": "class:RedisSessionStore",
      "target": "func:RedisSessionStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:61e2537f",
      "source": "class:RedisSessionStore",
      "target": "func:RedisSessionStore._get_redis",
      "type": "contains",
      "label": "方法 _get_redis"
    },
    {
      "id": "edge:04ddaed6",
      "source": "class:RedisSessionStore",
      "target": "func:RedisSessionStore._session_key",
      "type": "contains",
      "label": "方法 _session_key"
    },
    {
      "id": "edge:2c4e5bf2",
      "source": "class:RedisSessionStore",
      "target": "func:RedisSessionStore._messages_key",
      "type": "contains",
      "label": "方法 _messages_key"
    },
    {
      "id": "edge:f10e6071",
      "source": "class:RedisSessionStore",
      "target": "func:RedisSessionStore.save_session",
      "type": "contains",
      "label": "方法 save_session"
    },
    {
      "id": "edge:484e6d66",
      "source": "class:RedisSessionStore",
      "target": "func:RedisSessionStore.get_session",
      "type": "contains",
      "label": "方法 get_session"
    },
    {
      "id": "edge:9dd731a0",
      "source": "class:RedisSessionStore",
      "target": "func:RedisSessionStore.update_session_status",
      "type": "contains",
      "label": "方法 update_session_status"
    },
    {
      "id": "edge:f2e6b753",
      "source": "class:RedisSessionStore",
      "target": "func:RedisSessionStore.delete_session",
      "type": "contains",
      "label": "方法 delete_session"
    },
    {
      "id": "edge:22d8ef1f",
      "source": "class:RedisSessionStore",
      "target": "func:RedisSessionStore.list_sessions",
      "type": "contains",
      "label": "方法 list_sessions"
    },
    {
      "id": "edge:0e8aac7c",
      "source": "class:RedisSessionStore",
      "target": "func:RedisSessionStore.append_message",
      "type": "contains",
      "label": "方法 append_message"
    },
    {
      "id": "edge:8e415466",
      "source": "class:RedisSessionStore",
      "target": "func:RedisSessionStore.get_messages",
      "type": "contains",
      "label": "方法 get_messages"
    },
    {
      "id": "edge:716a5906",
      "source": "class:RedisSessionStore",
      "target": "func:RedisSessionStore.count_messages",
      "type": "contains",
      "label": "方法 count_messages"
    },
    {
      "id": "edge:6cf0a7ff",
      "source": "class:RedisSessionStore",
      "target": "func:RedisSessionStore.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:02743d11",
      "source": "file:src/agentkit/session/store.py",
      "target": "class:FileSessionStore",
      "type": "contains",
      "label": "定义类 FileSessionStore"
    },
    {
      "id": "edge:43d4d495",
      "source": "class:FileSessionStore",
      "target": "func:FileSessionStore.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:95501eb4",
      "source": "class:FileSessionStore",
      "target": "func:FileSessionStore._session_path",
      "type": "contains",
      "label": "方法 _session_path"
    },
    {
      "id": "edge:66ebe4db",
      "source": "class:FileSessionStore",
      "target": "func:FileSessionStore._read_session_file",
      "type": "contains",
      "label": "方法 _read_session_file"
    },
    {
      "id": "edge:918bcfb7",
      "source": "class:FileSessionStore",
      "target": "func:FileSessionStore._write_session_file",
      "type": "contains",
      "label": "方法 _write_session_file"
    },
    {
      "id": "edge:f8deece5",
      "source": "class:FileSessionStore",
      "target": "func:FileSessionStore.save_session",
      "type": "contains",
      "label": "方法 save_session"
    },
    {
      "id": "edge:de3020e3",
      "source": "class:FileSessionStore",
      "target": "func:FileSessionStore.get_session",
      "type": "contains",
      "label": "方法 get_session"
    },
    {
      "id": "edge:2794224d",
      "source": "class:FileSessionStore",
      "target": "func:FileSessionStore.update_session_status",
      "type": "contains",
      "label": "方法 update_session_status"
    },
    {
      "id": "edge:fddbd99f",
      "source": "class:FileSessionStore",
      "target": "func:FileSessionStore.delete_session",
      "type": "contains",
      "label": "方法 delete_session"
    },
    {
      "id": "edge:ade57284",
      "source": "class:FileSessionStore",
      "target": "func:FileSessionStore.list_sessions",
      "type": "contains",
      "label": "方法 list_sessions"
    },
    {
      "id": "edge:5748792d",
      "source": "class:FileSessionStore",
      "target": "func:FileSessionStore.append_message",
      "type": "contains",
      "label": "方法 append_message"
    },
    {
      "id": "edge:6da2d07d",
      "source": "class:FileSessionStore",
      "target": "func:FileSessionStore.get_messages",
      "type": "contains",
      "label": "方法 get_messages"
    },
    {
      "id": "edge:c7e9cee5",
      "source": "class:FileSessionStore",
      "target": "func:FileSessionStore.count_messages",
      "type": "contains",
      "label": "方法 count_messages"
    },
    {
      "id": "edge:f5e9274a",
      "source": "class:FileSessionStore",
      "target": "func:FileSessionStore.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:83aaaa44",
      "source": "file:src/agentkit/skills/base.py",
      "target": "class:EvolutionConfig",
      "type": "contains",
      "label": "定义类 EvolutionConfig"
    },
    {
      "id": "edge:7a0dab6e",
      "source": "file:src/agentkit/skills/base.py",
      "target": "class:IntentConfig",
      "type": "contains",
      "label": "定义类 IntentConfig"
    },
    {
      "id": "edge:60346dda",
      "source": "file:src/agentkit/skills/base.py",
      "target": "class:QualityGateConfig",
      "type": "contains",
      "label": "定义类 QualityGateConfig"
    },
    {
      "id": "edge:e7a39cd9",
      "source": "file:src/agentkit/skills/base.py",
      "target": "class:SkillConfig",
      "type": "contains",
      "label": "定义类 SkillConfig"
    },
    {
      "id": "edge:da3fc744",
      "source": "class:SkillConfig",
      "target": "class:AgentConfig",
      "type": "extends",
      "label": "继承 AgentConfig"
    },
    {
      "id": "edge:0cac9943",
      "source": "class:SkillConfig",
      "target": "func:SkillConfig.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:a154f20c",
      "source": "class:SkillConfig",
      "target": "func:SkillConfig._validate_v2",
      "type": "contains",
      "label": "方法 _validate_v2"
    },
    {
      "id": "edge:817cab91",
      "source": "class:SkillConfig",
      "target": "func:SkillConfig._parse_dependencies",
      "type": "contains",
      "label": "方法 _parse_dependencies"
    },
    {
      "id": "edge:5a37ca2b",
      "source": "class:SkillConfig",
      "target": "func:SkillConfig._parse_capabilities",
      "type": "contains",
      "label": "方法 _parse_capabilities"
    },
    {
      "id": "edge:96ada4b7",
      "source": "class:SkillConfig",
      "target": "func:SkillConfig.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:84e08d11",
      "source": "class:SkillConfig",
      "target": "func:SkillConfig.from_yaml",
      "type": "contains",
      "label": "方法 from_yaml"
    },
    {
      "id": "edge:7f64bfa2",
      "source": "class:SkillConfig",
      "target": "func:SkillConfig.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:a5e61a55",
      "source": "file:src/agentkit/skills/base.py",
      "target": "class:Skill",
      "type": "contains",
      "label": "定义类 Skill"
    },
    {
      "id": "edge:555ce23f",
      "source": "class:Skill",
      "target": "func:Skill.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:bd743d23",
      "source": "class:Skill",
      "target": "func:Skill.name",
      "type": "contains",
      "label": "方法 name"
    },
    {
      "id": "edge:ad46b2e8",
      "source": "class:Skill",
      "target": "func:Skill.version",
      "type": "contains",
      "label": "方法 version"
    },
    {
      "id": "edge:9e7f1a23",
      "source": "class:Skill",
      "target": "func:Skill.config",
      "type": "contains",
      "label": "方法 config"
    },
    {
      "id": "edge:06790c41",
      "source": "class:Skill",
      "target": "func:Skill.tools",
      "type": "contains",
      "label": "方法 tools"
    },
    {
      "id": "edge:8971435b",
      "source": "class:Skill",
      "target": "func:Skill.capabilities",
      "type": "contains",
      "label": "方法 capabilities"
    },
    {
      "id": "edge:cf19ba9a",
      "source": "class:Skill",
      "target": "func:Skill.dependencies",
      "type": "contains",
      "label": "方法 dependencies"
    },
    {
      "id": "edge:c3b65735",
      "source": "class:Skill",
      "target": "func:Skill.bind_tool",
      "type": "contains",
      "label": "方法 bind_tool"
    },
    {
      "id": "edge:42fdba34",
      "source": "class:Skill",
      "target": "func:Skill.unbind_tool",
      "type": "contains",
      "label": "方法 unbind_tool"
    },
    {
      "id": "edge:d37fd013",
      "source": "class:Skill",
      "target": "func:Skill.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:bd61d7f8",
      "source": "file:src/agentkit/skills/geo_pipeline.py",
      "target": "class:PipelineStep",
      "type": "contains",
      "label": "定义类 PipelineStep"
    },
    {
      "id": "edge:bdcafd46",
      "source": "file:src/agentkit/skills/geo_pipeline.py",
      "target": "class:PipelineStepResult",
      "type": "contains",
      "label": "定义类 PipelineStepResult"
    },
    {
      "id": "edge:f834b303",
      "source": "file:src/agentkit/skills/geo_pipeline.py",
      "target": "class:PipelineResult",
      "type": "contains",
      "label": "定义类 PipelineResult"
    },
    {
      "id": "edge:c9ddd44d",
      "source": "file:src/agentkit/skills/geo_pipeline.py",
      "target": "class:GEOPipeline",
      "type": "contains",
      "label": "定义类 GEOPipeline"
    },
    {
      "id": "edge:436c4a9e",
      "source": "class:GEOPipeline",
      "target": "func:GEOPipeline.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:d7f95822",
      "source": "class:GEOPipeline",
      "target": "func:GEOPipeline.from_config",
      "type": "contains",
      "label": "方法 from_config"
    },
    {
      "id": "edge:175123cb",
      "source": "class:GEOPipeline",
      "target": "func:GEOPipeline.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:1b51ae27",
      "source": "class:GEOPipeline",
      "target": "func:GEOPipeline._execute_step",
      "type": "contains",
      "label": "方法 _execute_step"
    },
    {
      "id": "edge:4ce4105a",
      "source": "class:GEOPipeline",
      "target": "func:GEOPipeline._execute_skill",
      "type": "contains",
      "label": "方法 _execute_skill"
    },
    {
      "id": "edge:aecdde82",
      "source": "class:GEOPipeline",
      "target": "func:GEOPipeline._build_execution_groups",
      "type": "contains",
      "label": "方法 _build_execution_groups"
    },
    {
      "id": "edge:80fe655a",
      "source": "class:GEOPipeline",
      "target": "func:GEOPipeline._map_input",
      "type": "contains",
      "label": "方法 _map_input"
    },
    {
      "id": "edge:2bd72650",
      "source": "class:GEOPipeline",
      "target": "func:GEOPipeline._resolve_mapping_path",
      "type": "contains",
      "label": "方法 _resolve_mapping_path"
    },
    {
      "id": "edge:1cac681a",
      "source": "class:GEOPipeline",
      "target": "func:GEOPipeline._evaluate_condition",
      "type": "contains",
      "label": "方法 _evaluate_condition"
    },
    {
      "id": "edge:61d5a2f7",
      "source": "class:GEOPipeline",
      "target": "func:GEOPipeline._build_final_output",
      "type": "contains",
      "label": "方法 _build_final_output"
    },
    {
      "id": "edge:8a1dc2e8",
      "source": "file:src/agentkit/skills/loader.py",
      "target": "class:SkillLoader",
      "type": "contains",
      "label": "定义类 SkillLoader"
    },
    {
      "id": "edge:f8fef3c8",
      "source": "class:SkillLoader",
      "target": "func:SkillLoader.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:59fd45a6",
      "source": "class:SkillLoader",
      "target": "func:SkillLoader.load_from_directory",
      "type": "contains",
      "label": "方法 load_from_directory"
    },
    {
      "id": "edge:ee829725",
      "source": "class:SkillLoader",
      "target": "func:SkillLoader.load_from_file",
      "type": "contains",
      "label": "方法 load_from_file"
    },
    {
      "id": "edge:9cfe0534",
      "source": "class:SkillLoader",
      "target": "func:SkillLoader._load_skill_from_file",
      "type": "contains",
      "label": "方法 _load_skill_from_file"
    },
    {
      "id": "edge:b899dfbb",
      "source": "class:SkillLoader",
      "target": "func:SkillLoader.load_from_skill_md",
      "type": "contains",
      "label": "方法 load_from_skill_md"
    },
    {
      "id": "edge:a3972ad2",
      "source": "class:SkillLoader",
      "target": "func:SkillLoader.load_from_entry_points",
      "type": "contains",
      "label": "方法 load_from_entry_points"
    },
    {
      "id": "edge:059d393a",
      "source": "class:SkillLoader",
      "target": "func:SkillLoader._bind_tools",
      "type": "contains",
      "label": "方法 _bind_tools"
    },
    {
      "id": "edge:df063942",
      "source": "file:src/agentkit/skills/pipeline.py",
      "target": "class:SkillPipeline",
      "type": "contains",
      "label": "定义类 SkillPipeline"
    },
    {
      "id": "edge:bdfd1a67",
      "source": "class:SkillPipeline",
      "target": "func:SkillPipeline.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:767600a0",
      "source": "class:SkillPipeline",
      "target": "func:SkillPipeline.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:cfdac7a5",
      "source": "class:SkillPipeline",
      "target": "func:SkillPipeline._execute_skill",
      "type": "contains",
      "label": "方法 _execute_skill"
    },
    {
      "id": "edge:85eea26f",
      "source": "class:SkillPipeline",
      "target": "func:SkillPipeline._evaluate_condition",
      "type": "contains",
      "label": "方法 _evaluate_condition"
    },
    {
      "id": "edge:b56aba34",
      "source": "class:SkillPipeline",
      "target": "func:SkillPipeline._resolve_path",
      "type": "contains",
      "label": "方法 _resolve_path"
    },
    {
      "id": "edge:3d29ae09",
      "source": "class:SkillPipeline",
      "target": "func:SkillPipeline._map_input",
      "type": "contains",
      "label": "方法 _map_input"
    },
    {
      "id": "edge:1a50c5e3",
      "source": "file:src/agentkit/skills/registry.py",
      "target": "class:SkillRegistry",
      "type": "contains",
      "label": "定义类 SkillRegistry"
    },
    {
      "id": "edge:97df71f9",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:4ee33161",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry.register",
      "type": "contains",
      "label": "方法 register"
    },
    {
      "id": "edge:1b431e5b",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry.unregister",
      "type": "contains",
      "label": "方法 unregister"
    },
    {
      "id": "edge:f0b5a83a",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry.get",
      "type": "contains",
      "label": "方法 get"
    },
    {
      "id": "edge:513f47b9",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry.list_skills",
      "type": "contains",
      "label": "方法 list_skills"
    },
    {
      "id": "edge:128eca1a",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry.update_skill",
      "type": "contains",
      "label": "方法 update_skill"
    },
    {
      "id": "edge:8f00db48",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry.has_skill",
      "type": "contains",
      "label": "方法 has_skill"
    },
    {
      "id": "edge:4117c1c3",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry.get_versions",
      "type": "contains",
      "label": "方法 get_versions"
    },
    {
      "id": "edge:8c87257c",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry.query_by_capability",
      "type": "contains",
      "label": "方法 query_by_capability"
    },
    {
      "id": "edge:33678e41",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry.health_check",
      "type": "contains",
      "label": "方法 health_check"
    },
    {
      "id": "edge:9854ee1e",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry._check_skill_dependencies",
      "type": "contains",
      "label": "方法 _check_skill_dependencies"
    },
    {
      "id": "edge:9b2eb665",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry._check_version_constraint",
      "type": "contains",
      "label": "方法 _check_version_constraint"
    },
    {
      "id": "edge:520647a5",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry.register_pipeline",
      "type": "contains",
      "label": "方法 register_pipeline"
    },
    {
      "id": "edge:995bca91",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry.get_pipeline",
      "type": "contains",
      "label": "方法 get_pipeline"
    },
    {
      "id": "edge:a715a5f4",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry.list_pipelines",
      "type": "contains",
      "label": "方法 list_pipelines"
    },
    {
      "id": "edge:8b762f5f",
      "source": "class:SkillRegistry",
      "target": "func:SkillRegistry.unregister_pipeline",
      "type": "contains",
      "label": "方法 unregister_pipeline"
    },
    {
      "id": "edge:c0c8b9f1",
      "source": "file:src/agentkit/skills/schema.py",
      "target": "class:DependencyDecl",
      "type": "contains",
      "label": "定义类 DependencyDecl"
    },
    {
      "id": "edge:b6b9c5ee",
      "source": "file:src/agentkit/skills/schema.py",
      "target": "class:CapabilityTag",
      "type": "contains",
      "label": "定义类 CapabilityTag"
    },
    {
      "id": "edge:8e833ebc",
      "source": "file:src/agentkit/skills/schema.py",
      "target": "class:SkillSpec",
      "type": "contains",
      "label": "定义类 SkillSpec"
    },
    {
      "id": "edge:641bc1c8",
      "source": "class:SkillSpec",
      "target": "func:SkillSpec.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:b998c72a",
      "source": "class:SkillSpec",
      "target": "func:SkillSpec.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:63957b58",
      "source": "class:SkillSpec",
      "target": "func:SkillSpec.capability_tags",
      "type": "contains",
      "label": "方法 capability_tags"
    },
    {
      "id": "edge:178b8c53",
      "source": "class:SkillSpec",
      "target": "func:SkillSpec.required_dependencies",
      "type": "contains",
      "label": "方法 required_dependencies"
    },
    {
      "id": "edge:ef7484cf",
      "source": "class:SkillSpec",
      "target": "func:SkillSpec.skill_dependencies",
      "type": "contains",
      "label": "方法 skill_dependencies"
    },
    {
      "id": "edge:c636b834",
      "source": "class:SkillSpec",
      "target": "func:SkillSpec.tool_dependencies",
      "type": "contains",
      "label": "方法 tool_dependencies"
    },
    {
      "id": "edge:f23e6b43",
      "source": "file:src/agentkit/skills/schema.py",
      "target": "class:HealthCheckResult",
      "type": "contains",
      "label": "定义类 HealthCheckResult"
    },
    {
      "id": "edge:48797af2",
      "source": "class:HealthCheckResult",
      "target": "func:HealthCheckResult.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:ca6c3c9f",
      "source": "file:src/agentkit/skills/skill_md.py",
      "target": "class:SkillMdParser",
      "type": "contains",
      "label": "定义类 SkillMdParser"
    },
    {
      "id": "edge:36203262",
      "source": "class:SkillMdParser",
      "target": "func:SkillMdParser.parse",
      "type": "contains",
      "label": "方法 parse"
    },
    {
      "id": "edge:d10ad120",
      "source": "class:SkillMdParser",
      "target": "func:SkillMdParser.to_skill_config",
      "type": "contains",
      "label": "方法 to_skill_config"
    },
    {
      "id": "edge:1f810681",
      "source": "file:src/agentkit/telemetry/metrics.py",
      "target": "class:_NoOpCounter",
      "type": "contains",
      "label": "定义类 _NoOpCounter"
    },
    {
      "id": "edge:e182911d",
      "source": "class:_NoOpCounter",
      "target": "func:_NoOpCounter.add",
      "type": "contains",
      "label": "方法 add"
    },
    {
      "id": "edge:d03aa497",
      "source": "file:src/agentkit/telemetry/metrics.py",
      "target": "class:_NoOpHistogram",
      "type": "contains",
      "label": "定义类 _NoOpHistogram"
    },
    {
      "id": "edge:adca8fc6",
      "source": "class:_NoOpHistogram",
      "target": "func:_NoOpHistogram.record",
      "type": "contains",
      "label": "方法 record"
    },
    {
      "id": "edge:46ddd42f",
      "source": "file:src/agentkit/telemetry/metrics.py",
      "target": "class:_NoOpUpDownCounter",
      "type": "contains",
      "label": "定义类 _NoOpUpDownCounter"
    },
    {
      "id": "edge:bb20df4c",
      "source": "class:_NoOpUpDownCounter",
      "target": "func:_NoOpUpDownCounter.add",
      "type": "contains",
      "label": "方法 add"
    },
    {
      "id": "edge:fe1c1923",
      "source": "file:src/agentkit/telemetry/tracer.py",
      "target": "class:TelemetryConfig",
      "type": "contains",
      "label": "定义类 TelemetryConfig"
    },
    {
      "id": "edge:0965b5e3",
      "source": "file:src/agentkit/telemetry/tracer.py",
      "target": "class:NoOpSpan",
      "type": "contains",
      "label": "定义类 NoOpSpan"
    },
    {
      "id": "edge:e8fe9dfb",
      "source": "class:NoOpSpan",
      "target": "func:NoOpSpan.__enter__",
      "type": "contains",
      "label": "方法 __enter__"
    },
    {
      "id": "edge:df801ff2",
      "source": "class:NoOpSpan",
      "target": "func:NoOpSpan.__exit__",
      "type": "contains",
      "label": "方法 __exit__"
    },
    {
      "id": "edge:19452ec9",
      "source": "class:NoOpSpan",
      "target": "func:NoOpSpan.set_attribute",
      "type": "contains",
      "label": "方法 set_attribute"
    },
    {
      "id": "edge:41fd0459",
      "source": "class:NoOpSpan",
      "target": "func:NoOpSpan.add_event",
      "type": "contains",
      "label": "方法 add_event"
    },
    {
      "id": "edge:f8f66eac",
      "source": "class:NoOpSpan",
      "target": "func:NoOpSpan.record_exception",
      "type": "contains",
      "label": "方法 record_exception"
    },
    {
      "id": "edge:650e303c",
      "source": "class:NoOpSpan",
      "target": "func:NoOpSpan.is_recording",
      "type": "contains",
      "label": "方法 is_recording"
    },
    {
      "id": "edge:6dd3b9b7",
      "source": "file:src/agentkit/telemetry/tracer.py",
      "target": "class:NoOpTracer",
      "type": "contains",
      "label": "定义类 NoOpTracer"
    },
    {
      "id": "edge:8b54fe2f",
      "source": "class:NoOpTracer",
      "target": "func:NoOpTracer.start_span",
      "type": "contains",
      "label": "方法 start_span"
    },
    {
      "id": "edge:e68b35f9",
      "source": "class:NoOpTracer",
      "target": "func:NoOpTracer.start_as_current_span",
      "type": "contains",
      "label": "方法 start_as_current_span"
    },
    {
      "id": "edge:97fa5634",
      "source": "file:src/agentkit/telemetry/tracer.py",
      "target": "class:OTelSpan",
      "type": "contains",
      "label": "定义类 OTelSpan"
    },
    {
      "id": "edge:2157fc4b",
      "source": "class:OTelSpan",
      "target": "func:OTelSpan.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:17f3e6f2",
      "source": "class:OTelSpan",
      "target": "func:OTelSpan.__enter__",
      "type": "contains",
      "label": "方法 __enter__"
    },
    {
      "id": "edge:f94b943b",
      "source": "class:OTelSpan",
      "target": "func:OTelSpan.__exit__",
      "type": "contains",
      "label": "方法 __exit__"
    },
    {
      "id": "edge:b7ff2a0a",
      "source": "class:OTelSpan",
      "target": "func:OTelSpan.set_attribute",
      "type": "contains",
      "label": "方法 set_attribute"
    },
    {
      "id": "edge:989ecbec",
      "source": "class:OTelSpan",
      "target": "func:OTelSpan.add_event",
      "type": "contains",
      "label": "方法 add_event"
    },
    {
      "id": "edge:806384c5",
      "source": "class:OTelSpan",
      "target": "func:OTelSpan.record_exception",
      "type": "contains",
      "label": "方法 record_exception"
    },
    {
      "id": "edge:c2b8fc32",
      "source": "class:OTelSpan",
      "target": "func:OTelSpan.is_recording",
      "type": "contains",
      "label": "方法 is_recording"
    },
    {
      "id": "edge:2bdceebd",
      "source": "file:src/agentkit/telemetry/tracer.py",
      "target": "class:OTelTracer",
      "type": "contains",
      "label": "定义类 OTelTracer"
    },
    {
      "id": "edge:538df865",
      "source": "class:OTelTracer",
      "target": "func:OTelTracer.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:7f9a8738",
      "source": "class:OTelTracer",
      "target": "func:OTelTracer.start_span",
      "type": "contains",
      "label": "方法 start_span"
    },
    {
      "id": "edge:4151a1eb",
      "source": "class:OTelTracer",
      "target": "func:OTelTracer.start_as_current_span",
      "type": "contains",
      "label": "方法 start_as_current_span"
    },
    {
      "id": "edge:2d13a8bf",
      "source": "file:src/agentkit/telemetry/tracing.py",
      "target": "class:_NoOpSpan",
      "type": "contains",
      "label": "定义类 _NoOpSpan"
    },
    {
      "id": "edge:d30b86d2",
      "source": "class:_NoOpSpan",
      "target": "func:_NoOpSpan.__enter__",
      "type": "contains",
      "label": "方法 __enter__"
    },
    {
      "id": "edge:acec9691",
      "source": "class:_NoOpSpan",
      "target": "func:_NoOpSpan.__exit__",
      "type": "contains",
      "label": "方法 __exit__"
    },
    {
      "id": "edge:d59d19b6",
      "source": "class:_NoOpSpan",
      "target": "func:_NoOpSpan.set_attribute",
      "type": "contains",
      "label": "方法 set_attribute"
    },
    {
      "id": "edge:00a6c4ec",
      "source": "class:_NoOpSpan",
      "target": "func:_NoOpSpan.add_event",
      "type": "contains",
      "label": "方法 add_event"
    },
    {
      "id": "edge:56b6f651",
      "source": "class:_NoOpSpan",
      "target": "func:_NoOpSpan.set_status",
      "type": "contains",
      "label": "方法 set_status"
    },
    {
      "id": "edge:c0c995fb",
      "source": "class:_NoOpSpan",
      "target": "func:_NoOpSpan.record_exception",
      "type": "contains",
      "label": "方法 record_exception"
    },
    {
      "id": "edge:b663128c",
      "source": "file:src/agentkit/tools/agent_tool.py",
      "target": "class:AgentTool",
      "type": "contains",
      "label": "定义类 AgentTool"
    },
    {
      "id": "edge:108aa37d",
      "source": "class:AgentTool",
      "target": "func:AgentTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:05b88230",
      "source": "class:AgentTool",
      "target": "func:AgentTool.set_dispatcher",
      "type": "contains",
      "label": "方法 set_dispatcher"
    },
    {
      "id": "edge:cf6a0cff",
      "source": "class:AgentTool",
      "target": "func:AgentTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:0030210c",
      "source": "file:src/agentkit/tools/ask_human.py",
      "target": "class:AskHumanTool",
      "type": "contains",
      "label": "定义类 AskHumanTool"
    },
    {
      "id": "edge:e1b38919",
      "source": "class:AskHumanTool",
      "target": "func:AskHumanTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:77d22222",
      "source": "class:AskHumanTool",
      "target": "func:AskHumanTool.configure",
      "type": "contains",
      "label": "方法 configure"
    },
    {
      "id": "edge:1d34c69c",
      "source": "class:AskHumanTool",
      "target": "func:AskHumanTool.parameters",
      "type": "contains",
      "label": "方法 parameters"
    },
    {
      "id": "edge:7b2d97de",
      "source": "class:AskHumanTool",
      "target": "func:AskHumanTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:0b28f318",
      "source": "file:src/agentkit/tools/baidu_search.py",
      "target": "class:BaiduSearchTool",
      "type": "contains",
      "label": "定义类 BaiduSearchTool"
    },
    {
      "id": "edge:097ea717",
      "source": "class:BaiduSearchTool",
      "target": "func:BaiduSearchTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:547e850f",
      "source": "class:BaiduSearchTool",
      "target": "func:BaiduSearchTool._default_input_schema",
      "type": "contains",
      "label": "方法 _default_input_schema"
    },
    {
      "id": "edge:d457f225",
      "source": "class:BaiduSearchTool",
      "target": "func:BaiduSearchTool._default_output_schema",
      "type": "contains",
      "label": "方法 _default_output_schema"
    },
    {
      "id": "edge:92895e95",
      "source": "class:BaiduSearchTool",
      "target": "func:BaiduSearchTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:df8a81c6",
      "source": "class:BaiduSearchTool",
      "target": "func:BaiduSearchTool._search_via_api",
      "type": "contains",
      "label": "方法 _search_via_api"
    },
    {
      "id": "edge:3fdb6200",
      "source": "class:BaiduSearchTool",
      "target": "func:BaiduSearchTool._search_via_scrape",
      "type": "contains",
      "label": "方法 _search_via_scrape"
    },
    {
      "id": "edge:620e1db4",
      "source": "class:BaiduSearchTool",
      "target": "func:BaiduSearchTool._parse_baidu_html",
      "type": "contains",
      "label": "方法 _parse_baidu_html"
    },
    {
      "id": "edge:6ac78e50",
      "source": "class:BaiduSearchTool",
      "target": "func:BaiduSearchTool._parse_baidu_html_alt",
      "type": "contains",
      "label": "方法 _parse_baidu_html_alt"
    },
    {
      "id": "edge:ff847ef5",
      "source": "file:src/agentkit/tools/base.py",
      "target": "class:Tool",
      "type": "contains",
      "label": "定义类 Tool"
    },
    {
      "id": "edge:0a42a948",
      "source": "class:Tool",
      "target": "func:Tool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:1331e1fb",
      "source": "class:Tool",
      "target": "func:Tool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:9afcc12b",
      "source": "class:Tool",
      "target": "func:Tool.before_execute",
      "type": "contains",
      "label": "方法 before_execute"
    },
    {
      "id": "edge:ae3d9da1",
      "source": "class:Tool",
      "target": "func:Tool.after_execute",
      "type": "contains",
      "label": "方法 after_execute"
    },
    {
      "id": "edge:b676e737",
      "source": "class:Tool",
      "target": "func:Tool.on_error",
      "type": "contains",
      "label": "方法 on_error"
    },
    {
      "id": "edge:5464aa2e",
      "source": "class:Tool",
      "target": "func:Tool.safe_execute",
      "type": "contains",
      "label": "方法 safe_execute"
    },
    {
      "id": "edge:b4c4e41a",
      "source": "class:Tool",
      "target": "func:Tool.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:74eb78f8",
      "source": "class:Tool",
      "target": "func:Tool.__repr__",
      "type": "contains",
      "label": "方法 __repr__"
    },
    {
      "id": "edge:cb4d5810",
      "source": "file:src/agentkit/tools/composition.py",
      "target": "class:SequentialChain",
      "type": "contains",
      "label": "定义类 SequentialChain"
    },
    {
      "id": "edge:18dadf04",
      "source": "class:SequentialChain",
      "target": "class:Tool",
      "type": "extends",
      "label": "继承 Tool"
    },
    {
      "id": "edge:fa78b35b",
      "source": "class:SequentialChain",
      "target": "func:SequentialChain.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:60532b43",
      "source": "class:SequentialChain",
      "target": "func:SequentialChain.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:3309e723",
      "source": "file:src/agentkit/tools/composition.py",
      "target": "class:ParallelFanOut",
      "type": "contains",
      "label": "定义类 ParallelFanOut"
    },
    {
      "id": "edge:5ea7d0a9",
      "source": "class:ParallelFanOut",
      "target": "class:Tool",
      "type": "extends",
      "label": "继承 Tool"
    },
    {
      "id": "edge:14a54475",
      "source": "class:ParallelFanOut",
      "target": "func:ParallelFanOut.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:e65c76d4",
      "source": "class:ParallelFanOut",
      "target": "func:ParallelFanOut.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:ce921a9d",
      "source": "file:src/agentkit/tools/composition.py",
      "target": "class:DynamicSelector",
      "type": "contains",
      "label": "定义类 DynamicSelector"
    },
    {
      "id": "edge:c721472a",
      "source": "class:DynamicSelector",
      "target": "class:Tool",
      "type": "extends",
      "label": "继承 Tool"
    },
    {
      "id": "edge:9a1d2826",
      "source": "class:DynamicSelector",
      "target": "func:DynamicSelector.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:ebbb05c7",
      "source": "class:DynamicSelector",
      "target": "func:DynamicSelector.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:d642c146",
      "source": "class:DynamicSelector",
      "target": "func:DynamicSelector._select_by_keyword",
      "type": "contains",
      "label": "方法 _select_by_keyword"
    },
    {
      "id": "edge:e6a20e8b",
      "source": "class:DynamicSelector",
      "target": "func:DynamicSelector._select_by_llm",
      "type": "contains",
      "label": "方法 _select_by_llm"
    },
    {
      "id": "edge:e4bc7e68",
      "source": "file:src/agentkit/tools/computer_use.py",
      "target": "class:ComputerUseTool",
      "type": "contains",
      "label": "定义类 ComputerUseTool"
    },
    {
      "id": "edge:557d0b3a",
      "source": "class:ComputerUseTool",
      "target": "class:Tool",
      "type": "extends",
      "label": "继承 Tool"
    },
    {
      "id": "edge:6f089ff2",
      "source": "class:ComputerUseTool",
      "target": "func:ComputerUseTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c68d4dbc",
      "source": "class:ComputerUseTool",
      "target": "func:ComputerUseTool._get_http_client",
      "type": "contains",
      "label": "方法 _get_http_client"
    },
    {
      "id": "edge:14811766",
      "source": "class:ComputerUseTool",
      "target": "func:ComputerUseTool.close",
      "type": "contains",
      "label": "方法 close"
    },
    {
      "id": "edge:db96f1ee",
      "source": "class:ComputerUseTool",
      "target": "func:ComputerUseTool._default_input_schema",
      "type": "contains",
      "label": "方法 _default_input_schema"
    },
    {
      "id": "edge:8874f32f",
      "source": "class:ComputerUseTool",
      "target": "func:ComputerUseTool._default_output_schema",
      "type": "contains",
      "label": "方法 _default_output_schema"
    },
    {
      "id": "edge:2fcb33da",
      "source": "class:ComputerUseTool",
      "target": "func:ComputerUseTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:113e74c1",
      "source": "class:ComputerUseTool",
      "target": "func:ComputerUseTool._execute_with_fallback",
      "type": "contains",
      "label": "方法 _execute_with_fallback"
    },
    {
      "id": "edge:5a714955",
      "source": "class:ComputerUseTool",
      "target": "func:ComputerUseTool._call_anthropic_api",
      "type": "contains",
      "label": "方法 _call_anthropic_api"
    },
    {
      "id": "edge:d9e743df",
      "source": "class:ComputerUseTool",
      "target": "func:ComputerUseTool._validate_params",
      "type": "contains",
      "label": "方法 _validate_params"
    },
    {
      "id": "edge:dabf79a7",
      "source": "class:ComputerUseTool",
      "target": "func:ComputerUseTool._format_result",
      "type": "contains",
      "label": "方法 _format_result"
    },
    {
      "id": "edge:c879032f",
      "source": "class:ComputerUseTool",
      "target": "func:ComputerUseTool._error_result",
      "type": "contains",
      "label": "方法 _error_result"
    },
    {
      "id": "edge:63bccf3d",
      "source": "class:ComputerUseTool",
      "target": "func:ComputerUseTool.session_manager",
      "type": "contains",
      "label": "方法 session_manager"
    },
    {
      "id": "edge:2fef535d",
      "source": "class:ComputerUseTool",
      "target": "func:ComputerUseTool.recorder",
      "type": "contains",
      "label": "方法 recorder"
    },
    {
      "id": "edge:35ee7e4a",
      "source": "file:src/agentkit/tools/computer_use_recorder.py",
      "target": "class:ActionRecord",
      "type": "contains",
      "label": "定义类 ActionRecord"
    },
    {
      "id": "edge:283cec02",
      "source": "class:ActionRecord",
      "target": "func:ActionRecord.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:aac2eeeb",
      "source": "class:ActionRecord",
      "target": "func:ActionRecord.from_dict",
      "type": "contains",
      "label": "方法 from_dict"
    },
    {
      "id": "edge:310f91d2",
      "source": "file:src/agentkit/tools/computer_use_recorder.py",
      "target": "class:ComputerUseRecorder",
      "type": "contains",
      "label": "定义类 ComputerUseRecorder"
    },
    {
      "id": "edge:60a9c1cd",
      "source": "class:ComputerUseRecorder",
      "target": "func:ComputerUseRecorder.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:95e10e31",
      "source": "class:ComputerUseRecorder",
      "target": "func:ComputerUseRecorder.record",
      "type": "contains",
      "label": "方法 record"
    },
    {
      "id": "edge:92b9e088",
      "source": "class:ComputerUseRecorder",
      "target": "func:ComputerUseRecorder.get_records",
      "type": "contains",
      "label": "方法 get_records"
    },
    {
      "id": "edge:ad191683",
      "source": "class:ComputerUseRecorder",
      "target": "func:ComputerUseRecorder.get_records_by_action",
      "type": "contains",
      "label": "方法 get_records_by_action"
    },
    {
      "id": "edge:603ff876",
      "source": "class:ComputerUseRecorder",
      "target": "func:ComputerUseRecorder.get_failed_records",
      "type": "contains",
      "label": "方法 get_failed_records"
    },
    {
      "id": "edge:f866c180",
      "source": "class:ComputerUseRecorder",
      "target": "func:ComputerUseRecorder.replay",
      "type": "contains",
      "label": "方法 replay"
    },
    {
      "id": "edge:83425cc5",
      "source": "class:ComputerUseRecorder",
      "target": "func:ComputerUseRecorder.save_recording",
      "type": "contains",
      "label": "方法 save_recording"
    },
    {
      "id": "edge:f4361483",
      "source": "class:ComputerUseRecorder",
      "target": "func:ComputerUseRecorder.load_recording",
      "type": "contains",
      "label": "方法 load_recording"
    },
    {
      "id": "edge:c849e0ca",
      "source": "class:ComputerUseRecorder",
      "target": "func:ComputerUseRecorder.clear",
      "type": "contains",
      "label": "方法 clear"
    },
    {
      "id": "edge:9164f347",
      "source": "class:ComputerUseRecorder",
      "target": "func:ComputerUseRecorder.total_actions",
      "type": "contains",
      "label": "方法 total_actions"
    },
    {
      "id": "edge:1b0898dc",
      "source": "class:ComputerUseRecorder",
      "target": "func:ComputerUseRecorder.success_count",
      "type": "contains",
      "label": "方法 success_count"
    },
    {
      "id": "edge:92e1541e",
      "source": "class:ComputerUseRecorder",
      "target": "func:ComputerUseRecorder.failure_count",
      "type": "contains",
      "label": "方法 failure_count"
    },
    {
      "id": "edge:275c33a8",
      "source": "class:ComputerUseRecorder",
      "target": "func:ComputerUseRecorder.summary",
      "type": "contains",
      "label": "方法 summary"
    },
    {
      "id": "edge:d7e8b5dd",
      "source": "file:src/agentkit/tools/computer_use_session.py",
      "target": "class:ScreenInfo",
      "type": "contains",
      "label": "定义类 ScreenInfo"
    },
    {
      "id": "edge:f49916be",
      "source": "file:src/agentkit/tools/computer_use_session.py",
      "target": "class:ActionResult",
      "type": "contains",
      "label": "定义类 ActionResult"
    },
    {
      "id": "edge:5246f8b9",
      "source": "file:src/agentkit/tools/computer_use_session.py",
      "target": "class:ComputerUseSession",
      "type": "contains",
      "label": "定义类 ComputerUseSession"
    },
    {
      "id": "edge:a559d09c",
      "source": "class:ComputerUseSession",
      "target": "func:ComputerUseSession.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:424135fb",
      "source": "class:ComputerUseSession",
      "target": "func:ComputerUseSession.is_started",
      "type": "contains",
      "label": "方法 is_started"
    },
    {
      "id": "edge:84e9614c",
      "source": "class:ComputerUseSession",
      "target": "func:ComputerUseSession.start",
      "type": "contains",
      "label": "方法 start"
    },
    {
      "id": "edge:178b83cc",
      "source": "class:ComputerUseSession",
      "target": "func:ComputerUseSession.stop",
      "type": "contains",
      "label": "方法 stop"
    },
    {
      "id": "edge:e3c10012",
      "source": "class:ComputerUseSession",
      "target": "func:ComputerUseSession.screenshot",
      "type": "contains",
      "label": "方法 screenshot"
    },
    {
      "id": "edge:f1a69a6d",
      "source": "class:ComputerUseSession",
      "target": "func:ComputerUseSession.execute_action",
      "type": "contains",
      "label": "方法 execute_action"
    },
    {
      "id": "edge:00eda178",
      "source": "class:ComputerUseSession",
      "target": "func:ComputerUseSession.record_action",
      "type": "contains",
      "label": "方法 record_action"
    },
    {
      "id": "edge:adb2c3f2",
      "source": "class:ComputerUseSession",
      "target": "func:ComputerUseSession.action_history",
      "type": "contains",
      "label": "方法 action_history"
    },
    {
      "id": "edge:b75b599c",
      "source": "class:ComputerUseSession",
      "target": "func:ComputerUseSession.__repr__",
      "type": "contains",
      "label": "方法 __repr__"
    },
    {
      "id": "edge:16936e37",
      "source": "file:src/agentkit/tools/computer_use_session.py",
      "target": "class:InMemoryComputerUseSession",
      "type": "contains",
      "label": "定义类 InMemoryComputerUseSession"
    },
    {
      "id": "edge:c1c454dc",
      "source": "class:InMemoryComputerUseSession",
      "target": "class:ComputerUseSession",
      "type": "extends",
      "label": "继承 ComputerUseSession"
    },
    {
      "id": "edge:03af886f",
      "source": "class:InMemoryComputerUseSession",
      "target": "func:InMemoryComputerUseSession.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:56e275b2",
      "source": "class:InMemoryComputerUseSession",
      "target": "func:InMemoryComputerUseSession.start",
      "type": "contains",
      "label": "方法 start"
    },
    {
      "id": "edge:da93c588",
      "source": "class:InMemoryComputerUseSession",
      "target": "func:InMemoryComputerUseSession.stop",
      "type": "contains",
      "label": "方法 stop"
    },
    {
      "id": "edge:158937f8",
      "source": "class:InMemoryComputerUseSession",
      "target": "func:InMemoryComputerUseSession.screenshot",
      "type": "contains",
      "label": "方法 screenshot"
    },
    {
      "id": "edge:4e634528",
      "source": "class:InMemoryComputerUseSession",
      "target": "func:InMemoryComputerUseSession.execute_action",
      "type": "contains",
      "label": "方法 execute_action"
    },
    {
      "id": "edge:18f9a5e1",
      "source": "class:InMemoryComputerUseSession",
      "target": "func:InMemoryComputerUseSession._simulate_action",
      "type": "contains",
      "label": "方法 _simulate_action"
    },
    {
      "id": "edge:d8a060b5",
      "source": "file:src/agentkit/tools/computer_use_session.py",
      "target": "class:LocalComputerUseSession",
      "type": "contains",
      "label": "定义类 LocalComputerUseSession"
    },
    {
      "id": "edge:474785b5",
      "source": "class:LocalComputerUseSession",
      "target": "class:ComputerUseSession",
      "type": "extends",
      "label": "继承 ComputerUseSession"
    },
    {
      "id": "edge:8eabd346",
      "source": "class:LocalComputerUseSession",
      "target": "func:LocalComputerUseSession.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:e2ee466a",
      "source": "class:LocalComputerUseSession",
      "target": "func:LocalComputerUseSession.start",
      "type": "contains",
      "label": "方法 start"
    },
    {
      "id": "edge:ff25704f",
      "source": "class:LocalComputerUseSession",
      "target": "func:LocalComputerUseSession.stop",
      "type": "contains",
      "label": "方法 stop"
    },
    {
      "id": "edge:154d5102",
      "source": "class:LocalComputerUseSession",
      "target": "func:LocalComputerUseSession.screenshot",
      "type": "contains",
      "label": "方法 screenshot"
    },
    {
      "id": "edge:ce12f700",
      "source": "class:LocalComputerUseSession",
      "target": "func:LocalComputerUseSession.execute_action",
      "type": "contains",
      "label": "方法 execute_action"
    },
    {
      "id": "edge:9e1b3e76",
      "source": "class:LocalComputerUseSession",
      "target": "func:LocalComputerUseSession._validate_coordinates",
      "type": "contains",
      "label": "方法 _validate_coordinates"
    },
    {
      "id": "edge:394bccfc",
      "source": "class:LocalComputerUseSession",
      "target": "func:LocalComputerUseSession._execute_local_action",
      "type": "contains",
      "label": "方法 _execute_local_action"
    },
    {
      "id": "edge:277790ba",
      "source": "file:src/agentkit/tools/computer_use_session.py",
      "target": "class:DockerComputerUseSession",
      "type": "contains",
      "label": "定义类 DockerComputerUseSession"
    },
    {
      "id": "edge:ca3aefd1",
      "source": "class:DockerComputerUseSession",
      "target": "class:ComputerUseSession",
      "type": "extends",
      "label": "继承 ComputerUseSession"
    },
    {
      "id": "edge:2540735e",
      "source": "class:DockerComputerUseSession",
      "target": "func:DockerComputerUseSession.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:94a0a1f8",
      "source": "class:DockerComputerUseSession",
      "target": "func:DockerComputerUseSession.container_id",
      "type": "contains",
      "label": "方法 container_id"
    },
    {
      "id": "edge:157ade95",
      "source": "class:DockerComputerUseSession",
      "target": "func:DockerComputerUseSession.start",
      "type": "contains",
      "label": "方法 start"
    },
    {
      "id": "edge:ba53a1bd",
      "source": "class:DockerComputerUseSession",
      "target": "func:DockerComputerUseSession.stop",
      "type": "contains",
      "label": "方法 stop"
    },
    {
      "id": "edge:0f8cb1ef",
      "source": "class:DockerComputerUseSession",
      "target": "func:DockerComputerUseSession.screenshot",
      "type": "contains",
      "label": "方法 screenshot"
    },
    {
      "id": "edge:6174447c",
      "source": "class:DockerComputerUseSession",
      "target": "func:DockerComputerUseSession.execute_action",
      "type": "contains",
      "label": "方法 execute_action"
    },
    {
      "id": "edge:b4a591bd",
      "source": "file:src/agentkit/tools/computer_use_session.py",
      "target": "class:ComputerUseSessionManager",
      "type": "contains",
      "label": "定义类 ComputerUseSessionManager"
    },
    {
      "id": "edge:d963706b",
      "source": "class:ComputerUseSessionManager",
      "target": "func:ComputerUseSessionManager.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:a52b6106",
      "source": "class:ComputerUseSessionManager",
      "target": "func:ComputerUseSessionManager.get_or_create",
      "type": "contains",
      "label": "方法 get_or_create"
    },
    {
      "id": "edge:2347946e",
      "source": "class:ComputerUseSessionManager",
      "target": "func:ComputerUseSessionManager.get",
      "type": "contains",
      "label": "方法 get"
    },
    {
      "id": "edge:5f3c2958",
      "source": "class:ComputerUseSessionManager",
      "target": "func:ComputerUseSessionManager.remove",
      "type": "contains",
      "label": "方法 remove"
    },
    {
      "id": "edge:4a7a006c",
      "source": "class:ComputerUseSessionManager",
      "target": "func:ComputerUseSessionManager.list_sessions",
      "type": "contains",
      "label": "方法 list_sessions"
    },
    {
      "id": "edge:d3c03429",
      "source": "class:ComputerUseSessionManager",
      "target": "func:ComputerUseSessionManager.has_session",
      "type": "contains",
      "label": "方法 has_session"
    },
    {
      "id": "edge:f395d911",
      "source": "class:ComputerUseSessionManager",
      "target": "func:ComputerUseSessionManager.close_all",
      "type": "contains",
      "label": "方法 close_all"
    },
    {
      "id": "edge:065db0e0",
      "source": "file:src/agentkit/tools/function_tool.py",
      "target": "class:FunctionTool",
      "type": "contains",
      "label": "定义类 FunctionTool"
    },
    {
      "id": "edge:211fb6b9",
      "source": "class:FunctionTool",
      "target": "class:Tool",
      "type": "extends",
      "label": "继承 Tool"
    },
    {
      "id": "edge:73210e58",
      "source": "class:FunctionTool",
      "target": "func:FunctionTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:3f300834",
      "source": "class:FunctionTool",
      "target": "func:FunctionTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:93b19dd6",
      "source": "class:FunctionTool",
      "target": "func:FunctionTool._infer_schema",
      "type": "contains",
      "label": "方法 _infer_schema"
    },
    {
      "id": "edge:7abf572a",
      "source": "file:src/agentkit/tools/headroom_retrieve.py",
      "target": "class:HeadroomRetrieveTool",
      "type": "contains",
      "label": "定义类 HeadroomRetrieveTool"
    },
    {
      "id": "edge:8e1a3860",
      "source": "class:HeadroomRetrieveTool",
      "target": "class:Tool",
      "type": "extends",
      "label": "继承 Tool"
    },
    {
      "id": "edge:6bd0a4d3",
      "source": "class:HeadroomRetrieveTool",
      "target": "func:HeadroomRetrieveTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:e3948459",
      "source": "class:HeadroomRetrieveTool",
      "target": "func:HeadroomRetrieveTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:ce5a5d75",
      "source": "file:src/agentkit/tools/mcp_tool.py",
      "target": "class:MCPTool",
      "type": "contains",
      "label": "定义类 MCPTool"
    },
    {
      "id": "edge:cf4cef72",
      "source": "class:MCPTool",
      "target": "class:Tool",
      "type": "extends",
      "label": "继承 Tool"
    },
    {
      "id": "edge:dcdbb640",
      "source": "class:MCPTool",
      "target": "func:MCPTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:c81571b2",
      "source": "class:MCPTool",
      "target": "func:MCPTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:47091d04",
      "source": "file:src/agentkit/tools/memory_tool.py",
      "target": "class:MemoryTool",
      "type": "contains",
      "label": "定义类 MemoryTool"
    },
    {
      "id": "edge:f86f8228",
      "source": "class:MemoryTool",
      "target": "class:Tool",
      "type": "extends",
      "label": "继承 Tool"
    },
    {
      "id": "edge:8087846d",
      "source": "class:MemoryTool",
      "target": "func:MemoryTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:a82cf706",
      "source": "class:MemoryTool",
      "target": "func:MemoryTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:1c12e912",
      "source": "class:MemoryTool",
      "target": "func:MemoryTool._update_soul",
      "type": "contains",
      "label": "方法 _update_soul"
    },
    {
      "id": "edge:40391655",
      "source": "file:src/agentkit/tools/output_parser.py",
      "target": "class:ErrorType",
      "type": "contains",
      "label": "定义类 ErrorType"
    },
    {
      "id": "edge:8891cf8a",
      "source": "file:src/agentkit/tools/output_parser.py",
      "target": "class:ParsedOutput",
      "type": "contains",
      "label": "定义类 ParsedOutput"
    },
    {
      "id": "edge:73c87177",
      "source": "class:ParsedOutput",
      "target": "func:ParsedOutput.to_dict",
      "type": "contains",
      "label": "方法 to_dict"
    },
    {
      "id": "edge:6aec6095",
      "source": "file:src/agentkit/tools/output_parser.py",
      "target": "class:OutputParser",
      "type": "contains",
      "label": "定义类 OutputParser"
    },
    {
      "id": "edge:c03b6416",
      "source": "class:OutputParser",
      "target": "func:OutputParser.parse",
      "type": "contains",
      "label": "方法 parse"
    },
    {
      "id": "edge:6c569bbf",
      "source": "class:OutputParser",
      "target": "func:OutputParser._extract_message",
      "type": "contains",
      "label": "方法 _extract_message"
    },
    {
      "id": "edge:22d68eb6",
      "source": "class:OutputParser",
      "target": "func:OutputParser._classify_error",
      "type": "contains",
      "label": "方法 _classify_error"
    },
    {
      "id": "edge:1583e579",
      "source": "file:src/agentkit/tools/pty_session.py",
      "target": "class:PTYOutput",
      "type": "contains",
      "label": "定义类 PTYOutput"
    },
    {
      "id": "edge:7822d86a",
      "source": "file:src/agentkit/tools/pty_session.py",
      "target": "class:PTYSession",
      "type": "contains",
      "label": "定义类 PTYSession"
    },
    {
      "id": "edge:2681690a",
      "source": "class:PTYSession",
      "target": "func:PTYSession.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:5e4484d7",
      "source": "class:PTYSession",
      "target": "func:PTYSession.is_running",
      "type": "contains",
      "label": "方法 is_running"
    },
    {
      "id": "edge:7835b8e9",
      "source": "class:PTYSession",
      "target": "func:PTYSession.start",
      "type": "contains",
      "label": "方法 start"
    },
    {
      "id": "edge:25ba533e",
      "source": "class:PTYSession",
      "target": "func:PTYSession.run_command",
      "type": "contains",
      "label": "方法 run_command"
    },
    {
      "id": "edge:e27428c4",
      "source": "class:PTYSession",
      "target": "func:PTYSession.send",
      "type": "contains",
      "label": "方法 send"
    },
    {
      "id": "edge:1e8ace23",
      "source": "class:PTYSession",
      "target": "func:PTYSession.read_output",
      "type": "contains",
      "label": "方法 read_output"
    },
    {
      "id": "edge:0d398dab",
      "source": "class:PTYSession",
      "target": "func:PTYSession.close",
      "type": "contains",
      "label": "方法 close"
    },
    {
      "id": "edge:d409d019",
      "source": "class:PTYSession",
      "target": "func:PTYSession._read_until_exit",
      "type": "contains",
      "label": "方法 _read_until_exit"
    },
    {
      "id": "edge:19a7de61",
      "source": "class:PTYSession",
      "target": "func:PTYSession._drain_remaining_output",
      "type": "contains",
      "label": "方法 _drain_remaining_output"
    },
    {
      "id": "edge:72c1bddd",
      "source": "class:PTYSession",
      "target": "func:PTYSession._try_auto_respond",
      "type": "contains",
      "label": "方法 _try_auto_respond"
    },
    {
      "id": "edge:fc85de58",
      "source": "file:src/agentkit/tools/registry.py",
      "target": "class:ToolRegistry",
      "type": "contains",
      "label": "定义类 ToolRegistry"
    },
    {
      "id": "edge:8b0f00f2",
      "source": "class:ToolRegistry",
      "target": "func:ToolRegistry.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:ba4dc77e",
      "source": "class:ToolRegistry",
      "target": "func:ToolRegistry.register",
      "type": "contains",
      "label": "方法 register"
    },
    {
      "id": "edge:efff6cd5",
      "source": "class:ToolRegistry",
      "target": "func:ToolRegistry.unregister",
      "type": "contains",
      "label": "方法 unregister"
    },
    {
      "id": "edge:d46232a7",
      "source": "class:ToolRegistry",
      "target": "func:ToolRegistry.get",
      "type": "contains",
      "label": "方法 get"
    },
    {
      "id": "edge:e6d8162f",
      "source": "class:ToolRegistry",
      "target": "func:ToolRegistry.list_tools",
      "type": "contains",
      "label": "方法 list_tools"
    },
    {
      "id": "edge:c9bd4afe",
      "source": "class:ToolRegistry",
      "target": "func:ToolRegistry.list_all_versions",
      "type": "contains",
      "label": "方法 list_all_versions"
    },
    {
      "id": "edge:220f41ce",
      "source": "class:ToolRegistry",
      "target": "func:ToolRegistry.has_tool",
      "type": "contains",
      "label": "方法 has_tool"
    },
    {
      "id": "edge:59b822a1",
      "source": "class:ToolRegistry",
      "target": "func:ToolRegistry.clear",
      "type": "contains",
      "label": "方法 clear"
    },
    {
      "id": "edge:b95a6550",
      "source": "file:src/agentkit/tools/schema_tools.py",
      "target": "class:SchemaExtractTool",
      "type": "contains",
      "label": "定义类 SchemaExtractTool"
    },
    {
      "id": "edge:859f7bc9",
      "source": "class:SchemaExtractTool",
      "target": "class:Tool",
      "type": "extends",
      "label": "继承 Tool"
    },
    {
      "id": "edge:e3301817",
      "source": "class:SchemaExtractTool",
      "target": "func:SchemaExtractTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:e1a6ffd5",
      "source": "class:SchemaExtractTool",
      "target": "func:SchemaExtractTool._default_input_schema",
      "type": "contains",
      "label": "方法 _default_input_schema"
    },
    {
      "id": "edge:caf88a12",
      "source": "class:SchemaExtractTool",
      "target": "func:SchemaExtractTool._default_output_schema",
      "type": "contains",
      "label": "方法 _default_output_schema"
    },
    {
      "id": "edge:6e29b4e7",
      "source": "class:SchemaExtractTool",
      "target": "func:SchemaExtractTool._is_url",
      "type": "contains",
      "label": "方法 _is_url"
    },
    {
      "id": "edge:3857b842",
      "source": "class:SchemaExtractTool",
      "target": "func:SchemaExtractTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:bbc1a5a6",
      "source": "file:src/agentkit/tools/schema_tools.py",
      "target": "class:SchemaGenerateTool",
      "type": "contains",
      "label": "定义类 SchemaGenerateTool"
    },
    {
      "id": "edge:f3c52e61",
      "source": "class:SchemaGenerateTool",
      "target": "class:Tool",
      "type": "extends",
      "label": "继承 Tool"
    },
    {
      "id": "edge:b56808a6",
      "source": "class:SchemaGenerateTool",
      "target": "func:SchemaGenerateTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:210bbf40",
      "source": "class:SchemaGenerateTool",
      "target": "func:SchemaGenerateTool._default_input_schema",
      "type": "contains",
      "label": "方法 _default_input_schema"
    },
    {
      "id": "edge:f9fb05f7",
      "source": "class:SchemaGenerateTool",
      "target": "func:SchemaGenerateTool._default_output_schema",
      "type": "contains",
      "label": "方法 _default_output_schema"
    },
    {
      "id": "edge:4db2e1f6",
      "source": "class:SchemaGenerateTool",
      "target": "func:SchemaGenerateTool._generate_manual",
      "type": "contains",
      "label": "方法 _generate_manual"
    },
    {
      "id": "edge:bccb72a6",
      "source": "class:SchemaGenerateTool",
      "target": "func:SchemaGenerateTool._generate_with_schemaorg",
      "type": "contains",
      "label": "方法 _generate_with_schemaorg"
    },
    {
      "id": "edge:f0a8c6d0",
      "source": "class:SchemaGenerateTool",
      "target": "func:SchemaGenerateTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:322a8924",
      "source": "file:src/agentkit/tools/shell.py",
      "target": "class:ShellTool",
      "type": "contains",
      "label": "定义类 ShellTool"
    },
    {
      "id": "edge:0e2253c2",
      "source": "class:ShellTool",
      "target": "class:Tool",
      "type": "extends",
      "label": "继承 Tool"
    },
    {
      "id": "edge:ead6d248",
      "source": "class:ShellTool",
      "target": "func:ShellTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:ddc6cee1",
      "source": "class:ShellTool",
      "target": "func:ShellTool._default_input_schema",
      "type": "contains",
      "label": "方法 _default_input_schema"
    },
    {
      "id": "edge:443c5501",
      "source": "class:ShellTool",
      "target": "func:ShellTool._default_output_schema",
      "type": "contains",
      "label": "方法 _default_output_schema"
    },
    {
      "id": "edge:29721a3d",
      "source": "class:ShellTool",
      "target": "func:ShellTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:c8d1fcac",
      "source": "class:ShellTool",
      "target": "func:ShellTool._execute_standalone",
      "type": "contains",
      "label": "方法 _execute_standalone"
    },
    {
      "id": "edge:66c002ac",
      "source": "class:ShellTool",
      "target": "func:ShellTool._execute_in_session",
      "type": "contains",
      "label": "方法 _execute_in_session"
    },
    {
      "id": "edge:e1915bc1",
      "source": "class:ShellTool",
      "target": "func:ShellTool._execute_with_pty",
      "type": "contains",
      "label": "方法 _execute_with_pty"
    },
    {
      "id": "edge:5999426b",
      "source": "class:ShellTool",
      "target": "func:ShellTool._is_dangerous",
      "type": "contains",
      "label": "方法 _is_dangerous"
    },
    {
      "id": "edge:dc6ffa0d",
      "source": "class:ShellTool",
      "target": "func:ShellTool._is_single_command_dangerous",
      "type": "contains",
      "label": "方法 _is_single_command_dangerous"
    },
    {
      "id": "edge:fdafc997",
      "source": "class:ShellTool",
      "target": "func:ShellTool._request_confirmation",
      "type": "contains",
      "label": "方法 _request_confirmation"
    },
    {
      "id": "edge:6431f56c",
      "source": "class:ShellTool",
      "target": "func:ShellTool._log_audit",
      "type": "contains",
      "label": "方法 _log_audit"
    },
    {
      "id": "edge:6540d888",
      "source": "class:ShellTool",
      "target": "func:ShellTool.session_manager",
      "type": "contains",
      "label": "方法 session_manager"
    },
    {
      "id": "edge:4f700662",
      "source": "class:ShellTool",
      "target": "func:ShellTool.audit_log",
      "type": "contains",
      "label": "方法 audit_log"
    },
    {
      "id": "edge:e055472c",
      "source": "file:src/agentkit/tools/skill_install.py",
      "target": "class:SkillInstallTool",
      "type": "contains",
      "label": "定义类 SkillInstallTool"
    },
    {
      "id": "edge:1808bee6",
      "source": "class:SkillInstallTool",
      "target": "class:Tool",
      "type": "extends",
      "label": "继承 Tool"
    },
    {
      "id": "edge:d313ed12",
      "source": "class:SkillInstallTool",
      "target": "func:SkillInstallTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:8e9d1a29",
      "source": "class:SkillInstallTool",
      "target": "func:SkillInstallTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:f8be4d76",
      "source": "class:SkillInstallTool",
      "target": "func:SkillInstallTool._try_register_skill",
      "type": "contains",
      "label": "方法 _try_register_skill"
    },
    {
      "id": "edge:19d1f2f9",
      "source": "file:src/agentkit/tools/terminal_session.py",
      "target": "class:CommandRecord",
      "type": "contains",
      "label": "定义类 CommandRecord"
    },
    {
      "id": "edge:26f44b4b",
      "source": "file:src/agentkit/tools/terminal_session.py",
      "target": "class:TerminalSession",
      "type": "contains",
      "label": "定义类 TerminalSession"
    },
    {
      "id": "edge:96c6c4f0",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:9ab35014",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession.cwd",
      "type": "contains",
      "label": "方法 cwd"
    },
    {
      "id": "edge:c355b632",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession.env",
      "type": "contains",
      "label": "方法 env"
    },
    {
      "id": "edge:487d8df0",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession.history",
      "type": "contains",
      "label": "方法 history"
    },
    {
      "id": "edge:127cad24",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession.created_at",
      "type": "contains",
      "label": "方法 created_at"
    },
    {
      "id": "edge:441dd4f8",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession.get_cwd",
      "type": "contains",
      "label": "方法 get_cwd"
    },
    {
      "id": "edge:b85c369b",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession.set_cwd",
      "type": "contains",
      "label": "方法 set_cwd"
    },
    {
      "id": "edge:24050662",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession.get_env",
      "type": "contains",
      "label": "方法 get_env"
    },
    {
      "id": "edge:519a61b4",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession.set_env",
      "type": "contains",
      "label": "方法 set_env"
    },
    {
      "id": "edge:d88acbf8",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession.update_env",
      "type": "contains",
      "label": "方法 update_env"
    },
    {
      "id": "edge:88bccf3c",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession.get_history",
      "type": "contains",
      "label": "方法 get_history"
    },
    {
      "id": "edge:1bed0d6f",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:b97829b9",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession._build_command",
      "type": "contains",
      "label": "方法 _build_command"
    },
    {
      "id": "edge:36c8b89c",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession._update_state_after_execution",
      "type": "contains",
      "label": "方法 _update_state_after_execution"
    },
    {
      "id": "edge:4fae8d77",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession._parse_cd_commands",
      "type": "contains",
      "label": "方法 _parse_cd_commands"
    },
    {
      "id": "edge:e70c49a6",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession._parse_export_commands",
      "type": "contains",
      "label": "方法 _parse_export_commands"
    },
    {
      "id": "edge:c1136535",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession._add_history",
      "type": "contains",
      "label": "方法 _add_history"
    },
    {
      "id": "edge:d622fc27",
      "source": "class:TerminalSession",
      "target": "func:TerminalSession.close",
      "type": "contains",
      "label": "方法 close"
    },
    {
      "id": "edge:db00ce56",
      "source": "file:src/agentkit/tools/terminal_session.py",
      "target": "class:TerminalSessionManager",
      "type": "contains",
      "label": "定义类 TerminalSessionManager"
    },
    {
      "id": "edge:d07fa191",
      "source": "class:TerminalSessionManager",
      "target": "func:TerminalSessionManager.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:3e2d47b0",
      "source": "class:TerminalSessionManager",
      "target": "func:TerminalSessionManager.get_or_create",
      "type": "contains",
      "label": "方法 get_or_create"
    },
    {
      "id": "edge:ed83ced9",
      "source": "class:TerminalSessionManager",
      "target": "func:TerminalSessionManager.get",
      "type": "contains",
      "label": "方法 get"
    },
    {
      "id": "edge:128e3e73",
      "source": "class:TerminalSessionManager",
      "target": "func:TerminalSessionManager.remove",
      "type": "contains",
      "label": "方法 remove"
    },
    {
      "id": "edge:7d630241",
      "source": "class:TerminalSessionManager",
      "target": "func:TerminalSessionManager.list_sessions",
      "type": "contains",
      "label": "方法 list_sessions"
    },
    {
      "id": "edge:46cc02c6",
      "source": "class:TerminalSessionManager",
      "target": "func:TerminalSessionManager.has_session",
      "type": "contains",
      "label": "方法 has_session"
    },
    {
      "id": "edge:34866eb0",
      "source": "class:TerminalSessionManager",
      "target": "func:TerminalSessionManager.close_all",
      "type": "contains",
      "label": "方法 close_all"
    },
    {
      "id": "edge:21f0dc3d",
      "source": "file:src/agentkit/tools/web_crawl.py",
      "target": "class:WebCrawlTool",
      "type": "contains",
      "label": "定义类 WebCrawlTool"
    },
    {
      "id": "edge:6955c168",
      "source": "class:WebCrawlTool",
      "target": "class:Tool",
      "type": "extends",
      "label": "继承 Tool"
    },
    {
      "id": "edge:2442816f",
      "source": "class:WebCrawlTool",
      "target": "func:WebCrawlTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:0a19cc06",
      "source": "class:WebCrawlTool",
      "target": "func:WebCrawlTool._default_input_schema",
      "type": "contains",
      "label": "方法 _default_input_schema"
    },
    {
      "id": "edge:d334aada",
      "source": "class:WebCrawlTool",
      "target": "func:WebCrawlTool._default_output_schema",
      "type": "contains",
      "label": "方法 _default_output_schema"
    },
    {
      "id": "edge:e740909d",
      "source": "class:WebCrawlTool",
      "target": "func:WebCrawlTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:64987c14",
      "source": "file:src/agentkit/tools/web_search.py",
      "target": "class:WebSearchTool",
      "type": "contains",
      "label": "定义类 WebSearchTool"
    },
    {
      "id": "edge:89024f58",
      "source": "class:WebSearchTool",
      "target": "class:Tool",
      "type": "extends",
      "label": "继承 Tool"
    },
    {
      "id": "edge:1f170d63",
      "source": "class:WebSearchTool",
      "target": "func:WebSearchTool.__init__",
      "type": "contains",
      "label": "方法 __init__"
    },
    {
      "id": "edge:bce65ad2",
      "source": "class:WebSearchTool",
      "target": "func:WebSearchTool._default_input_schema",
      "type": "contains",
      "label": "方法 _default_input_schema"
    },
    {
      "id": "edge:a389c9c1",
      "source": "class:WebSearchTool",
      "target": "func:WebSearchTool._default_output_schema",
      "type": "contains",
      "label": "方法 _default_output_schema"
    },
    {
      "id": "edge:6ed9a1b4",
      "source": "class:WebSearchTool",
      "target": "func:WebSearchTool.execute",
      "type": "contains",
      "label": "方法 execute"
    },
    {
      "id": "edge:d4cd0534",
      "source": "class:WebSearchTool",
      "target": "func:WebSearchTool._search_tavily",
      "type": "contains",
      "label": "方法 _search_tavily"
    },
    {
      "id": "edge:c42b0dc9",
      "source": "class:WebSearchTool",
      "target": "func:WebSearchTool._search_serper",
      "type": "contains",
      "label": "方法 _search_serper"
    },
    {
      "id": "edge:52bd7900",
      "source": "class:WebSearchTool",
      "target": "func:WebSearchTool._search_duckduckgo",
      "type": "contains",
      "label": "方法 _search_duckduckgo"
    },
    {
      "id": "edge:7e9e214e",
      "source": "class:WebSearchTool",
      "target": "func:WebSearchTool._contains_cjk",
      "type": "contains",
      "label": "方法 _contains_cjk"
    },
    {
      "id": "edge:3003239e",
      "source": "class:WebSearchTool",
      "target": "func:WebSearchTool._cjk_to_english_hint",
      "type": "contains",
      "label": "方法 _cjk_to_english_hint"
    },
    {
      "id": "edge:b0bc8c66",
      "source": "class:WebSearchTool",
      "target": "func:WebSearchTool._search_duckduckgo_html",
      "type": "contains",
      "label": "方法 _search_duckduckgo_html"
    },
    {
      "id": "edge:78bfb581",
      "source": "class:WebSearchTool",
      "target": "func:WebSearchTool._search_duckduckgo_instant",
      "type": "contains",
      "label": "方法 _search_duckduckgo_instant"
    },
    {
      "id": "edge:cc400901",
      "source": "class:WebSearchTool",
      "target": "func:WebSearchTool._search_bing",
      "type": "contains",
      "label": "方法 _search_bing"
    },
    {
      "id": "edge:a69c6b13",
      "source": "class:WebSearchTool",
      "target": "func:WebSearchTool._parse_bing_html",
      "type": "contains",
      "label": "方法 _parse_bing_html"
    },
    {
      "id": "edge:e2e3bd8b",
      "source": "class:WebSearchTool",
      "target": "func:WebSearchTool._parse_duckduckgo_html",
      "type": "contains",
      "label": "方法 _parse_duckduckgo_html"
    },
    {
      "id": "edge:297efca1",
      "source": "class:WebSearchTool",
      "target": "func:WebSearchTool._parse_duckduckgo_html_alt",
      "type": "contains",
      "label": "方法 _parse_duckduckgo_html_alt"
    },
    {
      "id": "edge:5103e908",
      "source": "file:configs/geo_handlers.py",
      "target": "func:_internal_headers",
      "type": "contains",
      "label": "定义函数 _internal_headers"
    },
    {
      "id": "edge:1117664a",
      "source": "file:configs/geo_handlers.py",
      "target": "func:handle_citation_task",
      "type": "contains",
      "label": "定义函数 handle_citation_task"
    },
    {
      "id": "edge:e5d29609",
      "source": "file:configs/geo_handlers.py",
      "target": "func:handle_monitor_task",
      "type": "contains",
      "label": "定义函数 handle_monitor_task"
    },
    {
      "id": "edge:043f9c68",
      "source": "file:configs/geo_handlers.py",
      "target": "func:handle_schema_task",
      "type": "contains",
      "label": "定义函数 handle_schema_task"
    },
    {
      "id": "edge:dafb2b86",
      "source": "file:configs/geo_handlers.py",
      "target": "func:_call_internal",
      "type": "contains",
      "label": "定义函数 _call_internal"
    },
    {
      "id": "edge:e1dd22a9",
      "source": "file:configs/geo_server.py",
      "target": "func:_substitute_env_vars",
      "type": "contains",
      "label": "定义函数 _substitute_env_vars"
    },
    {
      "id": "edge:fd383db0",
      "source": "file:configs/geo_server.py",
      "target": "func:_init_llm_gateway",
      "type": "contains",
      "label": "定义函数 _init_llm_gateway"
    },
    {
      "id": "edge:9e7b1abf",
      "source": "file:configs/geo_server.py",
      "target": "func:_init_tool_registry",
      "type": "contains",
      "label": "定义函数 _init_tool_registry"
    },
    {
      "id": "edge:d7fa0859",
      "source": "file:configs/geo_server.py",
      "target": "func:_init_skill_registry",
      "type": "contains",
      "label": "定义函数 _init_skill_registry"
    },
    {
      "id": "edge:103416c2",
      "source": "file:configs/geo_server.py",
      "target": "func:create_geo_app",
      "type": "contains",
      "label": "定义函数 create_geo_app"
    },
    {
      "id": "edge:1bb22484",
      "source": "file:configs/geo_tools.py",
      "target": "func:_internal_headers",
      "type": "contains",
      "label": "定义函数 _internal_headers"
    },
    {
      "id": "edge:9defcf9f",
      "source": "file:configs/geo_tools.py",
      "target": "func:execute_single_platform",
      "type": "contains",
      "label": "定义函数 execute_single_platform"
    },
    {
      "id": "edge:ccc2b2d3",
      "source": "file:configs/geo_tools.py",
      "target": "func:get_or_create_task",
      "type": "contains",
      "label": "定义函数 get_or_create_task"
    },
    {
      "id": "edge:9b4f27f4",
      "source": "file:configs/geo_tools.py",
      "target": "func:retrieve_knowledge",
      "type": "contains",
      "label": "定义函数 retrieve_knowledge"
    },
    {
      "id": "edge:f5ff0c90",
      "source": "file:configs/geo_tools.py",
      "target": "func:monitor_check_and_compare",
      "type": "contains",
      "label": "定义函数 monitor_check_and_compare"
    },
    {
      "id": "edge:3a3ae804",
      "source": "file:configs/geo_tools.py",
      "target": "func:monitor_generate_report",
      "type": "contains",
      "label": "定义函数 monitor_generate_report"
    },
    {
      "id": "edge:b320962c",
      "source": "file:configs/geo_tools.py",
      "target": "func:monitor_create_record",
      "type": "contains",
      "label": "定义函数 monitor_create_record"
    },
    {
      "id": "edge:73402433",
      "source": "file:configs/geo_tools.py",
      "target": "func:fill_schema_with_llm",
      "type": "contains",
      "label": "定义函数 fill_schema_with_llm"
    },
    {
      "id": "edge:373f1f17",
      "source": "file:configs/geo_tools.py",
      "target": "func:identify_missing_dimensions",
      "type": "contains",
      "label": "定义函数 identify_missing_dimensions"
    },
    {
      "id": "edge:52af2d8e",
      "source": "file:configs/geo_tools.py",
      "target": "func:competitor_analyze",
      "type": "contains",
      "label": "定义函数 competitor_analyze"
    },
    {
      "id": "edge:314cb201",
      "source": "file:configs/geo_tools.py",
      "target": "func:competitor_gap_analysis",
      "type": "contains",
      "label": "定义函数 competitor_gap_analysis"
    },
    {
      "id": "edge:e0f195bc",
      "source": "file:configs/geo_tools.py",
      "target": "func:trend_insight",
      "type": "contains",
      "label": "定义函数 trend_insight"
    },
    {
      "id": "edge:394541f2",
      "source": "file:configs/geo_tools.py",
      "target": "func:trend_hotspot",
      "type": "contains",
      "label": "定义函数 trend_hotspot"
    },
    {
      "id": "edge:7d0c0f9c",
      "source": "file:configs/geo_tools.py",
      "target": "func:search_knowledge",
      "type": "contains",
      "label": "定义函数 search_knowledge"
    },
    {
      "id": "edge:ff44aa98",
      "source": "file:configs/geo_tools.py",
      "target": "func:detect_ai_patterns",
      "type": "contains",
      "label": "定义函数 detect_ai_patterns"
    },
    {
      "id": "edge:ae202e0b",
      "source": "file:configs/geo_tools.py",
      "target": "func:register_geo_tools",
      "type": "contains",
      "label": "定义函数 register_geo_tools"
    },
    {
      "id": "edge:a39370be",
      "source": "file:src/agentkit/bus/redis_bus.py",
      "target": "func:create_message_bus",
      "type": "contains",
      "label": "定义函数 create_message_bus"
    },
    {
      "id": "edge:cf3ce3f3",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "func:chat",
      "type": "contains",
      "label": "定义函数 chat"
    },
    {
      "id": "edge:e6f515e2",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "func:_chat_async",
      "type": "contains",
      "label": "定义函数 _chat_async"
    },
    {
      "id": "edge:a208ba84",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "func:_extract_search_keys",
      "type": "contains",
      "label": "定义函数 _extract_search_keys"
    },
    {
      "id": "edge:af9bbc5b",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "func:_build_gateway",
      "type": "contains",
      "label": "定义函数 _build_gateway"
    },
    {
      "id": "edge:5ff782bd",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "func:_resolve_default_model",
      "type": "contains",
      "label": "定义函数 _resolve_default_model"
    },
    {
      "id": "edge:6d9737a9",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "func:_print_help",
      "type": "contains",
      "label": "定义函数 _print_help"
    },
    {
      "id": "edge:7b47efe1",
      "source": "file:src/agentkit/cli/init.py",
      "target": "func:_write_file",
      "type": "contains",
      "label": "定义函数 _write_file"
    },
    {
      "id": "edge:cf06f1d4",
      "source": "file:src/agentkit/cli/init.py",
      "target": "func:init",
      "type": "contains",
      "label": "定义函数 init"
    },
    {
      "id": "edge:36bb46e6",
      "source": "file:src/agentkit/cli/main.py",
      "target": "func:gui",
      "type": "contains",
      "label": "定义函数 gui"
    },
    {
      "id": "edge:35d148b5",
      "source": "file:src/agentkit/cli/main.py",
      "target": "func:serve",
      "type": "contains",
      "label": "定义函数 serve"
    },
    {
      "id": "edge:cb72f0c7",
      "source": "file:src/agentkit/cli/main.py",
      "target": "func:version",
      "type": "contains",
      "label": "定义函数 version"
    },
    {
      "id": "edge:af2fa813",
      "source": "file:src/agentkit/cli/main.py",
      "target": "func:doctor",
      "type": "contains",
      "label": "定义函数 doctor"
    },
    {
      "id": "edge:14c915c4",
      "source": "file:src/agentkit/cli/onboarding.py",
      "target": "func:needs_onboarding",
      "type": "contains",
      "label": "定义函数 needs_onboarding"
    },
    {
      "id": "edge:779fccde",
      "source": "file:src/agentkit/cli/onboarding.py",
      "target": "func:run_onboarding",
      "type": "contains",
      "label": "定义函数 run_onboarding"
    },
    {
      "id": "edge:b648c960",
      "source": "file:src/agentkit/cli/pair.py",
      "target": "func:_generate_api_key",
      "type": "contains",
      "label": "定义函数 _generate_api_key"
    },
    {
      "id": "edge:5142b1de",
      "source": "file:src/agentkit/cli/pair.py",
      "target": "func:_load_clients",
      "type": "contains",
      "label": "定义函数 _load_clients"
    },
    {
      "id": "edge:d7dd4885",
      "source": "file:src/agentkit/cli/pair.py",
      "target": "func:_save_clients",
      "type": "contains",
      "label": "定义函数 _save_clients"
    },
    {
      "id": "edge:46260326",
      "source": "file:src/agentkit/cli/pair.py",
      "target": "func:pair",
      "type": "contains",
      "label": "定义函数 pair"
    },
    {
      "id": "edge:43e681c9",
      "source": "file:src/agentkit/cli/skill.py",
      "target": "func:list_skills",
      "type": "contains",
      "label": "定义函数 list_skills"
    },
    {
      "id": "edge:30943068",
      "source": "file:src/agentkit/cli/skill.py",
      "target": "func:load_skill",
      "type": "contains",
      "label": "定义函数 load_skill"
    },
    {
      "id": "edge:23c10d89",
      "source": "file:src/agentkit/cli/skill.py",
      "target": "func:skill_create",
      "type": "contains",
      "label": "定义函数 skill_create"
    },
    {
      "id": "edge:a5c561cc",
      "source": "file:src/agentkit/cli/skill.py",
      "target": "func:skill_info",
      "type": "contains",
      "label": "定义函数 skill_info"
    },
    {
      "id": "edge:004a1640",
      "source": "file:src/agentkit/cli/task.py",
      "target": "func:submit",
      "type": "contains",
      "label": "定义函数 submit"
    },
    {
      "id": "edge:6d3da0d1",
      "source": "file:src/agentkit/cli/task.py",
      "target": "func:_submit_remote",
      "type": "contains",
      "label": "定义函数 _submit_remote"
    },
    {
      "id": "edge:16c256bb",
      "source": "file:src/agentkit/cli/task.py",
      "target": "func:_submit_local",
      "type": "contains",
      "label": "定义函数 _submit_local"
    },
    {
      "id": "edge:f0b164f8",
      "source": "file:src/agentkit/cli/task.py",
      "target": "func:status",
      "type": "contains",
      "label": "定义函数 status"
    },
    {
      "id": "edge:cd2951b8",
      "source": "file:src/agentkit/cli/task.py",
      "target": "func:list_tasks",
      "type": "contains",
      "label": "定义函数 list_tasks"
    },
    {
      "id": "edge:76a06924",
      "source": "file:src/agentkit/cli/task.py",
      "target": "func:cancel",
      "type": "contains",
      "label": "定义函数 cancel"
    },
    {
      "id": "edge:50ea14aa",
      "source": "file:src/agentkit/cli/usage.py",
      "target": "func:usage",
      "type": "contains",
      "label": "定义函数 usage"
    },
    {
      "id": "edge:54b3f1e5",
      "source": "file:src/agentkit/core/compressor.py",
      "target": "func:create_compressor",
      "type": "contains",
      "label": "定义函数 create_compressor"
    },
    {
      "id": "edge:bd8ca06d",
      "source": "file:src/agentkit/core/compressor.py",
      "target": "func:render_cached",
      "type": "contains",
      "label": "定义函数 render_cached"
    },
    {
      "id": "edge:70b6241c",
      "source": "file:src/agentkit/core/compressor.py",
      "target": "func:clear_cache",
      "type": "contains",
      "label": "定义函数 clear_cache"
    },
    {
      "id": "edge:6f111c15",
      "source": "file:src/agentkit/core/dispatcher.py",
      "target": "func:_validate_callback_url",
      "type": "contains",
      "label": "定义函数 _validate_callback_url"
    },
    {
      "id": "edge:20ba29fd",
      "source": "file:src/agentkit/core/headroom_compressor.py",
      "target": "func:_is_json_content",
      "type": "contains",
      "label": "定义函数 _is_json_content"
    },
    {
      "id": "edge:17e7f28b",
      "source": "file:src/agentkit/core/headroom_compressor.py",
      "target": "func:_is_code_content",
      "type": "contains",
      "label": "定义函数 _is_code_content"
    },
    {
      "id": "edge:dc43e70e",
      "source": "file:src/agentkit/core/logging.py",
      "target": "func:setup_structured_logging",
      "type": "contains",
      "label": "定义函数 setup_structured_logging"
    },
    {
      "id": "edge:356e3581",
      "source": "file:src/agentkit/core/logging.py",
      "target": "func:get_logger",
      "type": "contains",
      "label": "定义函数 get_logger"
    },
    {
      "id": "edge:faf0c7e8",
      "source": "file:src/agentkit/core/standalone.py",
      "target": "func:main",
      "type": "contains",
      "label": "定义函数 main"
    },
    {
      "id": "edge:f860d57d",
      "source": "file:src/agentkit/evolution/evolution_store.py",
      "target": "func:create_evolution_store",
      "type": "contains",
      "label": "定义函数 create_evolution_store"
    },
    {
      "id": "edge:4d45adda",
      "source": "file:src/agentkit/evolution/experience_store.py",
      "target": "func:_parse_time_window",
      "type": "contains",
      "label": "定义函数 _parse_time_window"
    },
    {
      "id": "edge:cdd620e5",
      "source": "file:src/agentkit/evolution/pg_store.py",
      "target": "func:_utcnow",
      "type": "contains",
      "label": "定义函数 _utcnow"
    },
    {
      "id": "edge:5d15f992",
      "source": "file:src/agentkit/evolution/pitfall_detector.py",
      "target": "func:_compute_name_similarity",
      "type": "contains",
      "label": "定义函数 _compute_name_similarity"
    },
    {
      "id": "edge:638a44ab",
      "source": "file:src/agentkit/evolution/pitfall_detector.py",
      "target": "func:_extract_keywords",
      "type": "contains",
      "label": "定义函数 _extract_keywords"
    },
    {
      "id": "edge:2d79b183",
      "source": "file:src/agentkit/evolution/pitfall_detector.py",
      "target": "func:_determine_warning_level",
      "type": "contains",
      "label": "定义函数 _determine_warning_level"
    },
    {
      "id": "edge:0c62a8a7",
      "source": "file:src/agentkit/evolution/pitfall_detector.py",
      "target": "func:_warning_level_order",
      "type": "contains",
      "label": "定义函数 _warning_level_order"
    },
    {
      "id": "edge:1918592c",
      "source": "file:src/agentkit/evolution/pitfall_detector.py",
      "target": "func:_build_suggestion",
      "type": "contains",
      "label": "定义函数 _build_suggestion"
    },
    {
      "id": "edge:397411ad",
      "source": "file:src/agentkit/evolution/prompt_optimizer.py",
      "target": "func:create_prompt_optimizer",
      "type": "contains",
      "label": "定义函数 create_prompt_optimizer"
    },
    {
      "id": "edge:8691ba24",
      "source": "file:src/agentkit/llm/cache.py",
      "target": "func:_serialize_response",
      "type": "contains",
      "label": "定义函数 _serialize_response"
    },
    {
      "id": "edge:605318b7",
      "source": "file:src/agentkit/llm/cache.py",
      "target": "func:_deserialize_response",
      "type": "contains",
      "label": "定义函数 _deserialize_response"
    },
    {
      "id": "edge:1bce0345",
      "source": "file:src/agentkit/llm/cache.py",
      "target": "func:_serialize_entry",
      "type": "contains",
      "label": "定义函数 _serialize_entry"
    },
    {
      "id": "edge:7a547fee",
      "source": "file:src/agentkit/llm/cache.py",
      "target": "func:_deserialize_entry",
      "type": "contains",
      "label": "定义函数 _deserialize_entry"
    },
    {
      "id": "edge:cf901f67",
      "source": "file:src/agentkit/llm/cache.py",
      "target": "func:create_llm_cache",
      "type": "contains",
      "label": "定义函数 create_llm_cache"
    },
    {
      "id": "edge:3666faa3",
      "source": "file:src/agentkit/llm/cache_key.py",
      "target": "func:generate_cache_key",
      "type": "contains",
      "label": "定义函数 generate_cache_key"
    },
    {
      "id": "edge:467fe6a0",
      "source": "file:src/agentkit/llm/cache_key.py",
      "target": "func:_extract_system_prompt",
      "type": "contains",
      "label": "定义函数 _extract_system_prompt"
    },
    {
      "id": "edge:8272b825",
      "source": "file:src/agentkit/llm/cache_key.py",
      "target": "func:_hash_str",
      "type": "contains",
      "label": "定义函数 _hash_str"
    },
    {
      "id": "edge:69ecc2ef",
      "source": "file:src/agentkit/llm/cache_key.py",
      "target": "func:_hash_json",
      "type": "contains",
      "label": "定义函数 _hash_json"
    },
    {
      "id": "edge:8fa15e64",
      "source": "file:src/agentkit/llm/providers/usage_store.py",
      "target": "func:create_usage_store",
      "type": "contains",
      "label": "定义函数 create_usage_store"
    },
    {
      "id": "edge:90b9a543",
      "source": "file:src/agentkit/llm/retry.py",
      "target": "func:_is_retryable_error",
      "type": "contains",
      "label": "定义函数 _is_retryable_error"
    },
    {
      "id": "edge:2fd99a2e",
      "source": "file:src/agentkit/memory/adapters/confluence.py",
      "target": "func:_escape_cql",
      "type": "contains",
      "label": "定义函数 _escape_cql"
    },
    {
      "id": "edge:8cffbf9a",
      "source": "file:src/agentkit/memory/document_loader.py",
      "target": "func:_detect_format",
      "type": "contains",
      "label": "定义函数 _detect_format"
    },
    {
      "id": "edge:e63b18cf",
      "source": "file:src/agentkit/memory/local_rag.py",
      "target": "func:_loader_doc_to_kb_doc",
      "type": "contains",
      "label": "定义函数 _loader_doc_to_kb_doc"
    },
    {
      "id": "edge:c7b2294b",
      "source": "file:src/agentkit/memory/models.py",
      "target": "func:create_episodic_session_factory",
      "type": "contains",
      "label": "定义函数 create_episodic_session_factory"
    },
    {
      "id": "edge:7f53a88f",
      "source": "file:src/agentkit/memory/models.py",
      "target": "func:ensure_episodic_table",
      "type": "contains",
      "label": "定义函数 ensure_episodic_table"
    },
    {
      "id": "edge:34a292f4",
      "source": "file:src/agentkit/memory/multi_source_retriever.py",
      "target": "func:_content_hash",
      "type": "contains",
      "label": "定义函数 _content_hash"
    },
    {
      "id": "edge:389b5d7e",
      "source": "file:src/agentkit/memory/query_transformer.py",
      "target": "func:create_query_transformer",
      "type": "contains",
      "label": "定义函数 create_query_transformer"
    },
    {
      "id": "edge:cb4b93d2",
      "source": "file:src/agentkit/memory/retriever.py",
      "target": "func:_estimate_tokens",
      "type": "contains",
      "label": "定义函数 _estimate_tokens"
    },
    {
      "id": "edge:83fc63e7",
      "source": "file:src/agentkit/orchestrator/retry.py",
      "target": "func:execute_with_retry",
      "type": "contains",
      "label": "定义函数 execute_with_retry"
    },
    {
      "id": "edge:310220bc",
      "source": "file:src/agentkit/quality/cascade_state_store.py",
      "target": "func:create_cascade_state_store",
      "type": "contains",
      "label": "定义函数 create_cascade_state_store"
    },
    {
      "id": "edge:db535d7d",
      "source": "file:src/agentkit/server/routes/agents.py",
      "target": "func:_get_pool",
      "type": "contains",
      "label": "定义函数 _get_pool"
    },
    {
      "id": "edge:fd2da126",
      "source": "file:src/agentkit/server/routes/agents.py",
      "target": "func:_get_skill_registry",
      "type": "contains",
      "label": "定义函数 _get_skill_registry"
    },
    {
      "id": "edge:899be584",
      "source": "file:src/agentkit/server/routes/agents.py",
      "target": "func:create_agent",
      "type": "contains",
      "label": "定义函数 create_agent"
    },
    {
      "id": "edge:3b40fe61",
      "source": "file:src/agentkit/server/routes/agents.py",
      "target": "func:list_agents",
      "type": "contains",
      "label": "定义函数 list_agents"
    },
    {
      "id": "edge:6c0c1d62",
      "source": "file:src/agentkit/server/routes/agents.py",
      "target": "func:get_agent",
      "type": "contains",
      "label": "定义函数 get_agent"
    },
    {
      "id": "edge:abd0c0c5",
      "source": "file:src/agentkit/server/routes/agents.py",
      "target": "func:delete_agent",
      "type": "contains",
      "label": "定义函数 delete_agent"
    },
    {
      "id": "edge:0902a064",
      "source": "file:src/agentkit/server/routes/evolution.py",
      "target": "func:_get_evolution_store",
      "type": "contains",
      "label": "定义函数 _get_evolution_store"
    },
    {
      "id": "edge:dcce880c",
      "source": "file:src/agentkit/server/routes/evolution.py",
      "target": "func:list_evolution_events",
      "type": "contains",
      "label": "定义函数 list_evolution_events"
    },
    {
      "id": "edge:fdb3ed51",
      "source": "file:src/agentkit/server/routes/evolution.py",
      "target": "func:get_skill_versions",
      "type": "contains",
      "label": "定义函数 get_skill_versions"
    },
    {
      "id": "edge:fec9b2de",
      "source": "file:src/agentkit/server/routes/evolution.py",
      "target": "func:trigger_evolution",
      "type": "contains",
      "label": "定义函数 trigger_evolution"
    },
    {
      "id": "edge:d9435a36",
      "source": "file:src/agentkit/server/routes/evolution.py",
      "target": "func:list_ab_tests",
      "type": "contains",
      "label": "定义函数 list_ab_tests"
    },
    {
      "id": "edge:817ea75f",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "func:_verify_api_key",
      "type": "contains",
      "label": "定义函数 _verify_api_key"
    },
    {
      "id": "edge:48a97aa4",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "func:_get_experience_store",
      "type": "contains",
      "label": "定义函数 _get_experience_store"
    },
    {
      "id": "edge:6d7bf5a4",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "func:_get_pitfall_detector",
      "type": "contains",
      "label": "定义函数 _get_pitfall_detector"
    },
    {
      "id": "edge:0e2c6d36",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "func:_get_path_optimizer",
      "type": "contains",
      "label": "定义函数 _get_path_optimizer"
    },
    {
      "id": "edge:2715e3bf",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "func:list_experiences",
      "type": "contains",
      "label": "定义函数 list_experiences"
    },
    {
      "id": "edge:0c5b1615",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "func:record_experience",
      "type": "contains",
      "label": "定义函数 record_experience"
    },
    {
      "id": "edge:cc035440",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "func:get_metrics",
      "type": "contains",
      "label": "定义函数 get_metrics"
    },
    {
      "id": "edge:b9020acb",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "func:_generate_trends",
      "type": "contains",
      "label": "定义函数 _generate_trends"
    },
    {
      "id": "edge:02da28b0",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "func:_compute_metrics_from_memory",
      "type": "contains",
      "label": "定义函数 _compute_metrics_from_memory"
    },
    {
      "id": "edge:d6578000",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "func:get_usage",
      "type": "contains",
      "label": "定义函数 get_usage"
    },
    {
      "id": "edge:019a628e",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "func:check_pitfalls",
      "type": "contains",
      "label": "定义函数 check_pitfalls"
    },
    {
      "id": "edge:c082e9fc",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "func:list_path_optimizations",
      "type": "contains",
      "label": "定义函数 list_path_optimizations"
    },
    {
      "id": "edge:52e680ba",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "func:record_path_optimization",
      "type": "contains",
      "label": "定义函数 record_path_optimization"
    },
    {
      "id": "edge:4d5794d4",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "func:evolution_dashboard_ws",
      "type": "contains",
      "label": "定义函数 evolution_dashboard_ws"
    },
    {
      "id": "edge:f6d0c82f",
      "source": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "target": "func:_broadcast_event",
      "type": "contains",
      "label": "定义函数 _broadcast_event"
    },
    {
      "id": "edge:30d52eb8",
      "source": "file:src/agentkit/server/routes/health.py",
      "target": "func:health_check",
      "type": "contains",
      "label": "定义函数 health_check"
    },
    {
      "id": "edge:a5b0fb07",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "func:_verify_api_key",
      "type": "contains",
      "label": "定义函数 _verify_api_key"
    },
    {
      "id": "edge:efb20955",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "func:list_sources",
      "type": "contains",
      "label": "定义函数 list_sources"
    },
    {
      "id": "edge:a55d31ec",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "func:add_source",
      "type": "contains",
      "label": "定义函数 add_source"
    },
    {
      "id": "edge:51d5f6c4",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "func:remove_source",
      "type": "contains",
      "label": "定义函数 remove_source"
    },
    {
      "id": "edge:3dd2a1b5",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "func:sync_source",
      "type": "contains",
      "label": "定义函数 sync_source"
    },
    {
      "id": "edge:4c3a43e5",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "func:update_source",
      "type": "contains",
      "label": "定义函数 update_source"
    },
    {
      "id": "edge:f90f8dd4",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "func:list_documents",
      "type": "contains",
      "label": "定义函数 list_documents"
    },
    {
      "id": "edge:23294b93",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "func:delete_document",
      "type": "contains",
      "label": "定义函数 delete_document"
    },
    {
      "id": "edge:5bc51ddc",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "func:upload_document",
      "type": "contains",
      "label": "定义函数 upload_document"
    },
    {
      "id": "edge:7216ab0b",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "func:search_knowledge",
      "type": "contains",
      "label": "定义函数 search_knowledge"
    },
    {
      "id": "edge:e0b874c9",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "func:check_source_health",
      "type": "contains",
      "label": "定义函数 check_source_health"
    },
    {
      "id": "edge:f99a173c",
      "source": "file:src/agentkit/server/routes/llm.py",
      "target": "func:get_usage",
      "type": "contains",
      "label": "定义函数 get_usage"
    },
    {
      "id": "edge:98d76eae",
      "source": "file:src/agentkit/server/routes/memory.py",
      "target": "func:_get_memory_retriever",
      "type": "contains",
      "label": "定义函数 _get_memory_retriever"
    },
    {
      "id": "edge:d24cc57e",
      "source": "file:src/agentkit/server/routes/memory.py",
      "target": "func:search_episodic_memory",
      "type": "contains",
      "label": "定义函数 search_episodic_memory"
    },
    {
      "id": "edge:e058b9e2",
      "source": "file:src/agentkit/server/routes/memory.py",
      "target": "func:search_semantic_memory",
      "type": "contains",
      "label": "定义函数 search_semantic_memory"
    },
    {
      "id": "edge:cece465c",
      "source": "file:src/agentkit/server/routes/memory.py",
      "target": "func:delete_episodic_memory",
      "type": "contains",
      "label": "定义函数 delete_episodic_memory"
    },
    {
      "id": "edge:7b2e076c",
      "source": "file:src/agentkit/server/routes/metrics.py",
      "target": "func:get_metrics",
      "type": "contains",
      "label": "定义函数 get_metrics"
    },
    {
      "id": "edge:f46c540a",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "func:_verify_api_key",
      "type": "contains",
      "label": "定义函数 _verify_api_key"
    },
    {
      "id": "edge:83b13e64",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "func:_resolve_for_chat",
      "type": "contains",
      "label": "定义函数 _resolve_for_chat"
    },
    {
      "id": "edge:ddb1124b",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "func:chat",
      "type": "contains",
      "label": "定义函数 chat"
    },
    {
      "id": "edge:26b16423",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "func:chat_stream",
      "type": "contains",
      "label": "定义函数 chat_stream"
    },
    {
      "id": "edge:f0ece387",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "func:get_capabilities",
      "type": "contains",
      "label": "定义函数 get_capabilities"
    },
    {
      "id": "edge:b2ecb73e",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "func:list_conversations",
      "type": "contains",
      "label": "定义函数 list_conversations"
    },
    {
      "id": "edge:fee85906",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "func:_derive_conversation_title",
      "type": "contains",
      "label": "定义函数 _derive_conversation_title"
    },
    {
      "id": "edge:bd14e0cd",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "func:get_conversation",
      "type": "contains",
      "label": "定义函数 get_conversation"
    },
    {
      "id": "edge:512e5f1d",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "func:portal_websocket",
      "type": "contains",
      "label": "定义函数 portal_websocket"
    },
    {
      "id": "edge:7dce23db",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "func:_mask_api_key",
      "type": "contains",
      "label": "定义函数 _mask_api_key"
    },
    {
      "id": "edge:28f68de6",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "func:_read_yaml_config",
      "type": "contains",
      "label": "定义函数 _read_yaml_config"
    },
    {
      "id": "edge:d136d9ad",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "func:_write_yaml_config",
      "type": "contains",
      "label": "定义函数 _write_yaml_config"
    },
    {
      "id": "edge:ab71f977",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "func:_get_config_path",
      "type": "contains",
      "label": "定义函数 _get_config_path"
    },
    {
      "id": "edge:b6c137ba",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "func:get_llm_settings",
      "type": "contains",
      "label": "定义函数 get_llm_settings"
    },
    {
      "id": "edge:b96de3b7",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "func:update_llm_settings",
      "type": "contains",
      "label": "定义函数 update_llm_settings"
    },
    {
      "id": "edge:fbbc7e39",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "func:get_skills_settings",
      "type": "contains",
      "label": "定义函数 get_skills_settings"
    },
    {
      "id": "edge:76f9a71a",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "func:update_skills_settings",
      "type": "contains",
      "label": "定义函数 update_skills_settings"
    },
    {
      "id": "edge:2a4ce43d",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "func:get_kb_settings",
      "type": "contains",
      "label": "定义函数 get_kb_settings"
    },
    {
      "id": "edge:1100c554",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "func:update_kb_settings",
      "type": "contains",
      "label": "定义函数 update_kb_settings"
    },
    {
      "id": "edge:40e1767d",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "func:get_general_settings",
      "type": "contains",
      "label": "定义函数 get_general_settings"
    },
    {
      "id": "edge:76d0c20d",
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "func:update_general_settings",
      "type": "contains",
      "label": "定义函数 update_general_settings"
    },
    {
      "id": "edge:3c823488",
      "source": "file:src/agentkit/server/routes/skill_management.py",
      "target": "func:_skill_to_info",
      "type": "contains",
      "label": "定义函数 _skill_to_info"
    },
    {
      "id": "edge:fa04ae80",
      "source": "file:src/agentkit/server/routes/skill_management.py",
      "target": "func:_skill_to_detail",
      "type": "contains",
      "label": "定义函数 _skill_to_detail"
    },
    {
      "id": "edge:048b0a0d",
      "source": "file:src/agentkit/server/routes/skill_management.py",
      "target": "func:list_skills",
      "type": "contains",
      "label": "定义函数 list_skills"
    },
    {
      "id": "edge:cd7d6158",
      "source": "file:src/agentkit/server/routes/skill_management.py",
      "target": "func:get_skill_detail",
      "type": "contains",
      "label": "定义函数 get_skill_detail"
    },
    {
      "id": "edge:b6aeb9bc",
      "source": "file:src/agentkit/server/routes/skill_management.py",
      "target": "func:check_skill_health",
      "type": "contains",
      "label": "定义函数 check_skill_health"
    },
    {
      "id": "edge:8935f4ec",
      "source": "file:src/agentkit/server/routes/skill_management.py",
      "target": "func:list_capabilities",
      "type": "contains",
      "label": "定义函数 list_capabilities"
    },
    {
      "id": "edge:bce75c41",
      "source": "file:src/agentkit/server/routes/skill_management.py",
      "target": "func:reload_skill",
      "type": "contains",
      "label": "定义函数 reload_skill"
    },
    {
      "id": "edge:ffe20f1c",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "func:_validate_skill_name",
      "type": "contains",
      "label": "定义函数 _validate_skill_name"
    },
    {
      "id": "edge:8ba8bbdd",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "func:_get_skills_dir",
      "type": "contains",
      "label": "定义函数 _get_skills_dir"
    },
    {
      "id": "edge:c97c90c8",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "func:_validate_source_url",
      "type": "contains",
      "label": "定义函数 _validate_source_url"
    },
    {
      "id": "edge:273aed2e",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "func:_validate_yaml_content",
      "type": "contains",
      "label": "定义函数 _validate_yaml_content"
    },
    {
      "id": "edge:a0c0820c",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "func:register_skill",
      "type": "contains",
      "label": "定义函数 register_skill"
    },
    {
      "id": "edge:555bdd65",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "func:list_skills",
      "type": "contains",
      "label": "定义函数 list_skills"
    },
    {
      "id": "edge:7b280ff1",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "func:mention_suggest",
      "type": "contains",
      "label": "定义函数 mention_suggest"
    },
    {
      "id": "edge:45f60531",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "func:install_skill",
      "type": "contains",
      "label": "定义函数 install_skill"
    },
    {
      "id": "edge:f957f390",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "func:uninstall_skill",
      "type": "contains",
      "label": "定义函数 uninstall_skill"
    },
    {
      "id": "edge:ec0e12c4",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "func:create_pipeline",
      "type": "contains",
      "label": "定义函数 create_pipeline"
    },
    {
      "id": "edge:dfee1216",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "func:list_pipelines",
      "type": "contains",
      "label": "定义函数 list_pipelines"
    },
    {
      "id": "edge:4f298f95",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "func:execute_pipeline",
      "type": "contains",
      "label": "定义函数 execute_pipeline"
    },
    {
      "id": "edge:785f15d4",
      "source": "file:src/agentkit/server/routes/tasks.py",
      "target": "func:_validate_input_size",
      "type": "contains",
      "label": "定义函数 _validate_input_size"
    },
    {
      "id": "edge:92cbde97",
      "source": "file:src/agentkit/server/routes/tasks.py",
      "target": "func:list_tasks",
      "type": "contains",
      "label": "定义函数 list_tasks"
    },
    {
      "id": "edge:023b3bd5",
      "source": "file:src/agentkit/server/routes/tasks.py",
      "target": "func:submit_task",
      "type": "contains",
      "label": "定义函数 submit_task"
    },
    {
      "id": "edge:43c86db6",
      "source": "file:src/agentkit/server/routes/tasks.py",
      "target": "func:get_task_status",
      "type": "contains",
      "label": "定义函数 get_task_status"
    },
    {
      "id": "edge:279e8e91",
      "source": "file:src/agentkit/server/routes/tasks.py",
      "target": "func:cancel_task",
      "type": "contains",
      "label": "定义函数 cancel_task"
    },
    {
      "id": "edge:d21bbc3b",
      "source": "file:src/agentkit/server/routes/tasks.py",
      "target": "func:stream_task",
      "type": "contains",
      "label": "定义函数 stream_task"
    },
    {
      "id": "edge:5b152b75",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "func:_get_or_create_session",
      "type": "contains",
      "label": "定义函数 _get_or_create_session"
    },
    {
      "id": "edge:32c7447a",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "func:_cleanup_session",
      "type": "contains",
      "label": "定义函数 _cleanup_session"
    },
    {
      "id": "edge:0eb52f59",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "func:_is_single_command_dangerous",
      "type": "contains",
      "label": "定义函数 _is_single_command_dangerous"
    },
    {
      "id": "edge:97185303",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "func:_is_dangerous",
      "type": "contains",
      "label": "定义函数 _is_dangerous"
    },
    {
      "id": "edge:885d0d31",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "func:_check_command_safety",
      "type": "contains",
      "label": "定义函数 _check_command_safety"
    },
    {
      "id": "edge:aa900a10",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "func:execute_command",
      "type": "contains",
      "label": "定义函数 execute_command"
    },
    {
      "id": "edge:13706074",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "func:get_session_history",
      "type": "contains",
      "label": "定义函数 get_session_history"
    },
    {
      "id": "edge:8a826a0c",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "func:terminal_websocket",
      "type": "contains",
      "label": "定义函数 terminal_websocket"
    },
    {
      "id": "edge:69887839",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:_verify_api_key",
      "type": "contains",
      "label": "定义函数 _verify_api_key"
    },
    {
      "id": "edge:f049f07c",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:_ws_subscribe",
      "type": "contains",
      "label": "定义函数 _ws_subscribe"
    },
    {
      "id": "edge:b9d8d501",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:_ws_unsubscribe",
      "type": "contains",
      "label": "定义函数 _ws_unsubscribe"
    },
    {
      "id": "edge:fdc9e57f",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:_get_store",
      "type": "contains",
      "label": "定义函数 _get_store"
    },
    {
      "id": "edge:15b7dbc7",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:_validate_workflow_stages",
      "type": "contains",
      "label": "定义函数 _validate_workflow_stages"
    },
    {
      "id": "edge:73cf11c8",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:_execute_workflow",
      "type": "contains",
      "label": "定义函数 _execute_workflow"
    },
    {
      "id": "edge:a8639dc2",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:_evaluate_condition",
      "type": "contains",
      "label": "定义函数 _evaluate_condition"
    },
    {
      "id": "edge:362c64e9",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:_broadcast_ws",
      "type": "contains",
      "label": "定义函数 _broadcast_ws"
    },
    {
      "id": "edge:1c4847df",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:list_workflows",
      "type": "contains",
      "label": "定义函数 list_workflows"
    },
    {
      "id": "edge:c81b16c0",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:create_workflow",
      "type": "contains",
      "label": "定义函数 create_workflow"
    },
    {
      "id": "edge:cd079fb7",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:get_workflow",
      "type": "contains",
      "label": "定义函数 get_workflow"
    },
    {
      "id": "edge:9ae7a9d6",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:list_workflow_executions",
      "type": "contains",
      "label": "定义函数 list_workflow_executions"
    },
    {
      "id": "edge:18485a25",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:update_workflow",
      "type": "contains",
      "label": "定义函数 update_workflow"
    },
    {
      "id": "edge:ef4dc41a",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:delete_workflow",
      "type": "contains",
      "label": "定义函数 delete_workflow"
    },
    {
      "id": "edge:8fcc82b8",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:execute_workflow",
      "type": "contains",
      "label": "定义函数 execute_workflow"
    },
    {
      "id": "edge:326ddc19",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:get_execution",
      "type": "contains",
      "label": "定义函数 get_execution"
    },
    {
      "id": "edge:0af32eb7",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:approve_execution",
      "type": "contains",
      "label": "定义函数 approve_execution"
    },
    {
      "id": "edge:02947532",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:cancel_execution",
      "type": "contains",
      "label": "定义函数 cancel_execution"
    },
    {
      "id": "edge:b4567dcd",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "func:workflow_websocket",
      "type": "contains",
      "label": "定义函数 workflow_websocket"
    },
    {
      "id": "edge:79db027d",
      "source": "file:src/agentkit/server/routes/ws.py",
      "target": "func:_authenticate",
      "type": "contains",
      "label": "定义函数 _authenticate"
    },
    {
      "id": "edge:fce5872f",
      "source": "file:src/agentkit/server/routes/ws.py",
      "target": "func:task_websocket",
      "type": "contains",
      "label": "定义函数 task_websocket"
    },
    {
      "id": "edge:f815e713",
      "source": "file:src/agentkit/server/routes/ws.py",
      "target": "func:_resolve_agent",
      "type": "contains",
      "label": "定义函数 _resolve_agent"
    },
    {
      "id": "edge:c8995e9f",
      "source": "file:src/agentkit/server/routes/ws.py",
      "target": "func:_run_react_and_stream",
      "type": "contains",
      "label": "定义函数 _run_react_and_stream"
    },
    {
      "id": "edge:e720ad68",
      "source": "file:src/agentkit/server/routes/ws.py",
      "target": "func:_listen_client_messages",
      "type": "contains",
      "label": "定义函数 _listen_client_messages"
    },
    {
      "id": "edge:4b033255",
      "source": "file:src/agentkit/server/task_store.py",
      "target": "func:create_task_store",
      "type": "contains",
      "label": "定义函数 create_task_store"
    },
    {
      "id": "edge:f46aa9fc",
      "source": "file:src/agentkit/server/task_store.py",
      "target": "func:_sanitize_redis_url",
      "type": "contains",
      "label": "定义函数 _sanitize_redis_url"
    },
    {
      "id": "edge:bef554da",
      "source": "file:src/agentkit/session/store.py",
      "target": "func:create_session_store",
      "type": "contains",
      "label": "定义函数 create_session_store"
    },
    {
      "id": "edge:8f38bbca",
      "source": "file:src/agentkit/skills/geo_pipeline.py",
      "target": "func:create_geo_pipeline_steps",
      "type": "contains",
      "label": "定义函数 create_geo_pipeline_steps"
    },
    {
      "id": "edge:62a5c176",
      "source": "file:src/agentkit/telemetry/metrics.py",
      "target": "func:get_meter",
      "type": "contains",
      "label": "定义函数 get_meter"
    },
    {
      "id": "edge:56c13ee4",
      "source": "file:src/agentkit/telemetry/metrics.py",
      "target": "func:_get_counter",
      "type": "contains",
      "label": "定义函数 _get_counter"
    },
    {
      "id": "edge:b5e16b45",
      "source": "file:src/agentkit/telemetry/metrics.py",
      "target": "func:_get_histogram",
      "type": "contains",
      "label": "定义函数 _get_histogram"
    },
    {
      "id": "edge:2e047db1",
      "source": "file:src/agentkit/telemetry/metrics.py",
      "target": "func:agent_request_counter",
      "type": "contains",
      "label": "定义函数 agent_request_counter"
    },
    {
      "id": "edge:6197db0f",
      "source": "file:src/agentkit/telemetry/metrics.py",
      "target": "func:agent_duration_histogram",
      "type": "contains",
      "label": "定义函数 agent_duration_histogram"
    },
    {
      "id": "edge:e4f6842a",
      "source": "file:src/agentkit/telemetry/metrics.py",
      "target": "func:llm_token_histogram",
      "type": "contains",
      "label": "定义函数 llm_token_histogram"
    },
    {
      "id": "edge:cb60ed3a",
      "source": "file:src/agentkit/telemetry/metrics.py",
      "target": "func:tool_duration_histogram",
      "type": "contains",
      "label": "定义函数 tool_duration_histogram"
    },
    {
      "id": "edge:80cbf793",
      "source": "file:src/agentkit/telemetry/metrics.py",
      "target": "func:pipeline_step_histogram",
      "type": "contains",
      "label": "定义函数 pipeline_step_histogram"
    },
    {
      "id": "edge:1210aff1",
      "source": "file:src/agentkit/telemetry/setup.py",
      "target": "func:setup_telemetry",
      "type": "contains",
      "label": "定义函数 setup_telemetry"
    },
    {
      "id": "edge:c4c7b7ae",
      "source": "file:src/agentkit/telemetry/tracer.py",
      "target": "func:get_tracer",
      "type": "contains",
      "label": "定义函数 get_tracer"
    },
    {
      "id": "edge:c2eab756",
      "source": "file:src/agentkit/telemetry/tracer.py",
      "target": "func:init_telemetry",
      "type": "contains",
      "label": "定义函数 init_telemetry"
    },
    {
      "id": "edge:906dd67c",
      "source": "file:src/agentkit/telemetry/tracing.py",
      "target": "func:get_tracer",
      "type": "contains",
      "label": "定义函数 get_tracer"
    },
    {
      "id": "edge:9a064814",
      "source": "file:src/agentkit/telemetry/tracing.py",
      "target": "func:start_span",
      "type": "contains",
      "label": "定义函数 start_span"
    },
    {
      "id": "edge:46ca4bcd",
      "source": "file:src/agentkit/telemetry/tracing.py",
      "target": "func:trace_agent",
      "type": "contains",
      "label": "定义函数 trace_agent"
    },
    {
      "id": "edge:c3be5ca5",
      "source": "file:src/agentkit/telemetry/tracing.py",
      "target": "func:trace_tool",
      "type": "contains",
      "label": "定义函数 trace_tool"
    },
    {
      "id": "edge:7dddab8e",
      "source": "file:src/agentkit/telemetry/tracing.py",
      "target": "func:trace_llm",
      "type": "contains",
      "label": "定义函数 trace_llm"
    },
    {
      "id": "edge:ef08cb06",
      "source": "file:src/agentkit/telemetry/tracing.py",
      "target": "func:trace_pipeline_step",
      "type": "contains",
      "label": "定义函数 trace_pipeline_step"
    },
    {
      "id": "edge:01db69cb",
      "source": "file:src/agentkit/utils/security.py",
      "target": "func:is_safe_url",
      "type": "contains",
      "label": "定义函数 is_safe_url"
    },
    {
      "id": "edge:b118e33e",
      "source": "file:src/agentkit/utils/security.py",
      "target": "func:_is_unsafe_ip",
      "type": "contains",
      "label": "定义函数 _is_unsafe_ip"
    },
    {
      "id": "edge:5906386c",
      "source": "file:src/agentkit/utils/security.py",
      "target": "func:is_safe_url_async",
      "type": "contains",
      "label": "定义函数 is_safe_url_async"
    },
    {
      "id": "edge:59e5972e",
      "source": "file:src/agentkit/utils/vector_math.py",
      "target": "func:compute_cosine_similarity",
      "type": "contains",
      "label": "定义函数 compute_cosine_similarity"
    },
    {
      "id": "edge:e7135e79",
      "source": "file:configs/geo_handlers.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:44258658",
      "source": "file:configs/geo_server.py",
      "target": "file:src/agentkit/core/agent_pool.py",
      "type": "imports",
      "label": "导入 AgentPool"
    },
    {
      "id": "edge:8ccb1c35",
      "source": "file:configs/geo_server.py",
      "target": "file:src/agentkit/llm/config.py",
      "type": "imports",
      "label": "导入 LLMConfig"
    },
    {
      "id": "edge:d04e3a9e",
      "source": "file:configs/geo_server.py",
      "target": "file:src/agentkit/llm/gateway.py",
      "type": "imports",
      "label": "导入 LLMGateway"
    },
    {
      "id": "edge:f960fe13",
      "source": "file:configs/geo_server.py",
      "target": "file:src/agentkit/llm/providers/openai.py",
      "type": "imports",
      "label": "导入 OpenAICompatibleProvider"
    },
    {
      "id": "edge:922aae2d",
      "source": "file:configs/geo_server.py",
      "target": "file:src/agentkit/quality/gate.py",
      "type": "imports",
      "label": "导入 QualityGate"
    },
    {
      "id": "edge:7d892d53",
      "source": "file:configs/geo_server.py",
      "target": "file:src/agentkit/quality/output.py",
      "type": "imports",
      "label": "导入 OutputStandardizer"
    },
    {
      "id": "edge:89f21c49",
      "source": "file:configs/geo_server.py",
      "target": "file:src/agentkit/router/intent.py",
      "type": "imports",
      "label": "导入 IntentRouter"
    },
    {
      "id": "edge:6612091d",
      "source": "file:configs/geo_server.py",
      "target": "file:src/agentkit/skills/loader.py",
      "type": "imports",
      "label": "导入 SkillLoader"
    },
    {
      "id": "edge:3fd5ee18",
      "source": "file:configs/geo_server.py",
      "target": "file:src/agentkit/skills/registry.py",
      "type": "imports",
      "label": "导入 SkillRegistry"
    },
    {
      "id": "edge:5c41a593",
      "source": "file:configs/geo_server.py",
      "target": "file:src/agentkit/tools/registry.py",
      "type": "imports",
      "label": "导入 ToolRegistry"
    },
    {
      "id": "edge:1f5982f7",
      "source": "file:configs/geo_server.py",
      "target": "file:configs/geo_tools.py",
      "type": "imports",
      "label": "导入 register_geo_tools"
    },
    {
      "id": "edge:bc17cee6",
      "source": "file:configs/geo_tools.py",
      "target": "file:src/agentkit/tools/function_tool.py",
      "type": "imports",
      "label": "导入 FunctionTool"
    },
    {
      "id": "edge:f1e081c5",
      "source": "file:configs/geo_tools.py",
      "target": "file:src/agentkit/tools/registry.py",
      "type": "imports",
      "label": "导入 ToolRegistry"
    },
    {
      "id": "edge:7afb228d",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/core/base.py",
      "type": "imports",
      "label": "导入 BaseAgent"
    },
    {
      "id": "edge:ecac19b7",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/core/config_driven.py",
      "type": "imports",
      "label": "导入 AgentConfig"
    },
    {
      "id": "edge:3dd9c1b5",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/core/config_driven.py",
      "type": "imports",
      "label": "导入 ConfigDrivenAgent"
    },
    {
      "id": "edge:4352a727",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 AgentCapability"
    },
    {
      "id": "edge:075fad4a",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 AgentStatus"
    },
    {
      "id": "edge:524e9361",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 HandoffMessage"
    },
    {
      "id": "edge:1fee03da",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:9a1c5ae1",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskProgress"
    },
    {
      "id": "edge:9f7a39e1",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskResult"
    },
    {
      "id": "edge:20bbb630",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskStatus"
    },
    {
      "id": "edge:f2916dcd",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActEngine"
    },
    {
      "id": "edge:c6a844ac",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActResult"
    },
    {
      "id": "edge:a970d41f",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActStep"
    },
    {
      "id": "edge:9aca1b58",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/llm/gateway.py",
      "type": "imports",
      "label": "导入 LLMGateway"
    },
    {
      "id": "edge:3e92a9e8",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMProvider"
    },
    {
      "id": "edge:dee6170b",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMRequest"
    },
    {
      "id": "edge:594ef329",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMResponse"
    },
    {
      "id": "edge:d2944da3",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 TokenUsage"
    },
    {
      "id": "edge:04fd54f0",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 ToolCall"
    },
    {
      "id": "edge:0d49de28",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 Skill"
    },
    {
      "id": "edge:977f1800",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 SkillConfig"
    },
    {
      "id": "edge:dcb71927",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 IntentConfig"
    },
    {
      "id": "edge:3d8674cd",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 QualityGateConfig"
    },
    {
      "id": "edge:89eb1b51",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/skills/registry.py",
      "type": "imports",
      "label": "导入 SkillRegistry"
    },
    {
      "id": "edge:86cf04ff",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/router/intent.py",
      "type": "imports",
      "label": "导入 IntentRouter"
    },
    {
      "id": "edge:f5a59b93",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/router/intent.py",
      "type": "imports",
      "label": "导入 RoutingResult"
    },
    {
      "id": "edge:2946d1ef",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/quality/gate.py",
      "type": "imports",
      "label": "导入 QualityGate"
    },
    {
      "id": "edge:15e87383",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/quality/gate.py",
      "type": "imports",
      "label": "导入 QualityResult"
    },
    {
      "id": "edge:7cf97cd3",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/quality/gate.py",
      "type": "imports",
      "label": "导入 QualityCheck"
    },
    {
      "id": "edge:8b63ebc4",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/quality/output.py",
      "type": "imports",
      "label": "导入 OutputStandardizer"
    },
    {
      "id": "edge:4ac53583",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/quality/output.py",
      "type": "imports",
      "label": "导入 StandardOutput"
    },
    {
      "id": "edge:7feb49e9",
      "source": "file:src/agentkit/__init__.py",
      "target": "file:src/agentkit/quality/output.py",
      "type": "imports",
      "label": "导入 OutputMetadata"
    },
    {
      "id": "edge:feb5bf2f",
      "source": "file:src/agentkit/__main__.py",
      "target": "file:src/agentkit/cli/main.py",
      "type": "imports",
      "label": "导入 app"
    },
    {
      "id": "edge:dc00611f",
      "source": "file:src/agentkit/bus/__init__.py",
      "target": "file:src/agentkit/bus/message.py",
      "type": "imports",
      "label": "导入 AgentMessage"
    },
    {
      "id": "edge:d4f84752",
      "source": "file:src/agentkit/bus/__init__.py",
      "target": "file:src/agentkit/bus/interface.py",
      "type": "imports",
      "label": "导入 MessageBus"
    },
    {
      "id": "edge:ddc38b65",
      "source": "file:src/agentkit/bus/__init__.py",
      "target": "file:src/agentkit/bus/protocol.py",
      "type": "imports",
      "label": "导入 MessageBus"
    },
    {
      "id": "edge:0b021f61",
      "source": "file:src/agentkit/bus/__init__.py",
      "target": "file:src/agentkit/bus/memory_bus.py",
      "type": "imports",
      "label": "导入 InMemoryMessageBus"
    },
    {
      "id": "edge:8f6d0848",
      "source": "file:src/agentkit/bus/__init__.py",
      "target": "file:src/agentkit/bus/redis_bus.py",
      "type": "imports",
      "label": "导入 RedisMessageBus"
    },
    {
      "id": "edge:a4b7cbb1",
      "source": "file:src/agentkit/bus/__init__.py",
      "target": "file:src/agentkit/bus/redis_bus.py",
      "type": "imports",
      "label": "导入 create_message_bus"
    },
    {
      "id": "edge:869377d7",
      "source": "file:src/agentkit/bus/interface.py",
      "target": "file:src/agentkit/bus/message.py",
      "type": "imports",
      "label": "导入 AgentMessage"
    },
    {
      "id": "edge:c889bd4c",
      "source": "file:src/agentkit/bus/memory_bus.py",
      "target": "file:src/agentkit/bus/message.py",
      "type": "imports",
      "label": "导入 AgentMessage"
    },
    {
      "id": "edge:54616906",
      "source": "file:src/agentkit/bus/protocol.py",
      "target": "file:src/agentkit/bus/message.py",
      "type": "imports",
      "label": "导入 AgentMessage"
    },
    {
      "id": "edge:2a846fa5",
      "source": "file:src/agentkit/bus/redis_bus.py",
      "target": "file:src/agentkit/bus/message.py",
      "type": "imports",
      "label": "导入 AgentMessage"
    },
    {
      "id": "edge:1f9d57d5",
      "source": "file:src/agentkit/bus/redis_bus.py",
      "target": "file:src/agentkit/bus/memory_bus.py",
      "type": "imports",
      "label": "导入 InMemoryMessageBus"
    },
    {
      "id": "edge:48bded33",
      "source": "file:src/agentkit/chat/semantic_router.py",
      "target": "file:src/agentkit/memory/embedder.py",
      "type": "imports",
      "label": "导入 Embedder"
    },
    {
      "id": "edge:1d1d6fcd",
      "source": "file:src/agentkit/chat/semantic_router.py",
      "target": "file:src/agentkit/memory/embedder.py",
      "type": "imports",
      "label": "导入 EmbeddingCache"
    },
    {
      "id": "edge:ac9c9c9f",
      "source": "file:src/agentkit/chat/semantic_router.py",
      "target": "file:src/agentkit/utils/vector_math.py",
      "type": "imports",
      "label": "导入 compute_cosine_similarity"
    },
    {
      "id": "edge:641190fa",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/cli/onboarding.py",
      "type": "imports",
      "label": "导入 run_onboarding"
    },
    {
      "id": "edge:ab63631a",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/session/manager.py",
      "type": "imports",
      "label": "导入 SessionManager"
    },
    {
      "id": "edge:6a5f4b0f",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/session/store.py",
      "type": "imports",
      "label": "导入 InMemorySessionStore"
    },
    {
      "id": "edge:3f55bcc8",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/session/models.py",
      "type": "imports",
      "label": "导入 MessageRole"
    },
    {
      "id": "edge:fdb5d639",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActEngine"
    },
    {
      "id": "edge:f1dc7881",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:868101e8",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/memory/profile.py",
      "type": "imports",
      "label": "导入 MemoryStore"
    },
    {
      "id": "edge:f87bb7b8",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/tools/memory_tool.py",
      "type": "imports",
      "label": "导入 MemoryTool"
    },
    {
      "id": "edge:b84d09dc",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/tools/shell.py",
      "type": "imports",
      "label": "导入 ShellTool"
    },
    {
      "id": "edge:8218daff",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/tools/web_search.py",
      "type": "imports",
      "label": "导入 WebSearchTool"
    },
    {
      "id": "edge:4f23cce5",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/tools/web_crawl.py",
      "type": "imports",
      "label": "导入 WebCrawlTool"
    },
    {
      "id": "edge:f2beb4df",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/tools/registry.py",
      "type": "imports",
      "label": "导入 ToolRegistry"
    },
    {
      "id": "edge:e19a4e79",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/skills/registry.py",
      "type": "imports",
      "label": "导入 SkillRegistry"
    },
    {
      "id": "edge:0c579745",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/skills/loader.py",
      "type": "imports",
      "label": "导入 SkillLoader"
    },
    {
      "id": "edge:4df7cdd8",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/router/intent.py",
      "type": "imports",
      "label": "导入 IntentRouter"
    },
    {
      "id": "edge:e9a1bf2f",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/llm/gateway.py",
      "type": "imports",
      "label": "导入 LLMGateway"
    },
    {
      "id": "edge:1a17c4f4",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/llm/providers/anthropic.py",
      "type": "imports",
      "label": "导入 AnthropicProvider"
    },
    {
      "id": "edge:1055b391",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/llm/providers/gemini.py",
      "type": "imports",
      "label": "导入 GeminiProvider"
    },
    {
      "id": "edge:1c967a75",
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/llm/providers/openai.py",
      "type": "imports",
      "label": "导入 OpenAICompatibleProvider"
    },
    {
      "id": "edge:624b806a",
      "source": "file:src/agentkit/cli/init.py",
      "target": "file:src/agentkit/cli/templates.py",
      "type": "imports",
      "label": "导入 AGENTKIT_YAML"
    },
    {
      "id": "edge:85167e90",
      "source": "file:src/agentkit/cli/init.py",
      "target": "file:src/agentkit/cli/templates.py",
      "type": "imports",
      "label": "导入 ENV_EXAMPLE"
    },
    {
      "id": "edge:f4046614",
      "source": "file:src/agentkit/cli/init.py",
      "target": "file:src/agentkit/cli/templates.py",
      "type": "imports",
      "label": "导入 DOCKER_COMPOSE"
    },
    {
      "id": "edge:487de815",
      "source": "file:src/agentkit/cli/init.py",
      "target": "file:src/agentkit/cli/templates.py",
      "type": "imports",
      "label": "导入 EXAMPLE_SKILL"
    },
    {
      "id": "edge:1b3e95ae",
      "source": "file:src/agentkit/cli/main.py",
      "target": "file:src/agentkit/cli/task.py",
      "type": "imports",
      "label": "导入 task_app"
    },
    {
      "id": "edge:b68544b7",
      "source": "file:src/agentkit/cli/main.py",
      "target": "file:src/agentkit/cli/skill.py",
      "type": "imports",
      "label": "导入 skill_app"
    },
    {
      "id": "edge:eb2c6d5e",
      "source": "file:src/agentkit/cli/main.py",
      "target": "file:src/agentkit/cli/init.py",
      "type": "imports",
      "label": "导入 init"
    },
    {
      "id": "edge:7f749c4c",
      "source": "file:src/agentkit/cli/main.py",
      "target": "file:src/agentkit/cli/usage.py",
      "type": "imports",
      "label": "导入 usage"
    },
    {
      "id": "edge:e9adc83e",
      "source": "file:src/agentkit/cli/main.py",
      "target": "file:src/agentkit/cli/pair.py",
      "type": "imports",
      "label": "导入 pair"
    },
    {
      "id": "edge:996647f3",
      "source": "file:src/agentkit/cli/main.py",
      "target": "file:src/agentkit/cli/chat.py",
      "type": "imports",
      "label": "导入 chat"
    },
    {
      "id": "edge:39136050",
      "source": "file:src/agentkit/cli/main.py",
      "target": "file:src/agentkit/cli/onboarding.py",
      "type": "imports",
      "label": "导入 run_onboarding"
    },
    {
      "id": "edge:29d713bb",
      "source": "file:src/agentkit/cli/main.py",
      "target": "file:src/agentkit/cli/onboarding.py",
      "type": "imports",
      "label": "导入 needs_onboarding"
    },
    {
      "id": "edge:cf637fa1",
      "source": "file:src/agentkit/cli/main.py",
      "target": "file:src/agentkit/cli/onboarding.py",
      "type": "imports",
      "label": "导入 run_onboarding"
    },
    {
      "id": "edge:c97f258e",
      "source": "file:src/agentkit/cli/onboarding.py",
      "target": "file:src/agentkit/memory/profile.py",
      "type": "imports",
      "label": "导入 MemoryStore"
    },
    {
      "id": "edge:b3c1979c",
      "source": "file:src/agentkit/cli/skill.py",
      "target": "file:src/agentkit/skills/loader.py",
      "type": "imports",
      "label": "导入 SkillLoader"
    },
    {
      "id": "edge:66b184b8",
      "source": "file:src/agentkit/cli/skill.py",
      "target": "file:src/agentkit/skills/registry.py",
      "type": "imports",
      "label": "导入 SkillRegistry"
    },
    {
      "id": "edge:4f1a79db",
      "source": "file:src/agentkit/cli/skill.py",
      "target": "file:src/agentkit/tools/registry.py",
      "type": "imports",
      "label": "导入 ToolRegistry"
    },
    {
      "id": "edge:296971c2",
      "source": "file:src/agentkit/cli/skill.py",
      "target": "file:src/agentkit/skills/loader.py",
      "type": "imports",
      "label": "导入 SkillLoader"
    },
    {
      "id": "edge:83b0a497",
      "source": "file:src/agentkit/cli/skill.py",
      "target": "file:src/agentkit/skills/registry.py",
      "type": "imports",
      "label": "导入 SkillRegistry"
    },
    {
      "id": "edge:6fde2354",
      "source": "file:src/agentkit/cli/skill.py",
      "target": "file:src/agentkit/tools/registry.py",
      "type": "imports",
      "label": "导入 ToolRegistry"
    },
    {
      "id": "edge:f1d5673d",
      "source": "file:src/agentkit/cli/skill.py",
      "target": "file:src/agentkit/skills/registry.py",
      "type": "imports",
      "label": "导入 SkillRegistry"
    },
    {
      "id": "edge:572d8f82",
      "source": "file:src/agentkit/cli/task.py",
      "target": "file:src/agentkit/server/client.py",
      "type": "imports",
      "label": "导入 AgentKitClient"
    },
    {
      "id": "edge:7e9d17a6",
      "source": "file:src/agentkit/cli/task.py",
      "target": "file:src/agentkit/server/client.py",
      "type": "imports",
      "label": "导入 AgentKitClient"
    },
    {
      "id": "edge:0993d7ef",
      "source": "file:src/agentkit/cli/task.py",
      "target": "file:src/agentkit/server/client.py",
      "type": "imports",
      "label": "导入 AgentKitClient"
    },
    {
      "id": "edge:c2f47699",
      "source": "file:src/agentkit/cli/task.py",
      "target": "file:src/agentkit/server/client.py",
      "type": "imports",
      "label": "导入 AgentKitClient"
    },
    {
      "id": "edge:fcb6fcf4",
      "source": "file:src/agentkit/cli/task.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:1c735ae7",
      "source": "file:src/agentkit/cli/task.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskStatus"
    },
    {
      "id": "edge:ed69cb82",
      "source": "file:src/agentkit/cli/usage.py",
      "target": "file:src/agentkit/llm/gateway.py",
      "type": "imports",
      "label": "导入 LLMGateway"
    },
    {
      "id": "edge:7a9e8ea3",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/base.py",
      "type": "imports",
      "label": "导入 BaseAgent"
    },
    {
      "id": "edge:e089e07d",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/compressor.py",
      "type": "imports",
      "label": "导入 CompressionStrategy"
    },
    {
      "id": "edge:61d6a24c",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/compressor.py",
      "type": "imports",
      "label": "导入 ContextCompressor"
    },
    {
      "id": "edge:c0195ee8",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/compressor.py",
      "type": "imports",
      "label": "导入 create_compressor"
    },
    {
      "id": "edge:f6f17d66",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/config_driven.py",
      "type": "imports",
      "label": "导入 AgentConfig"
    },
    {
      "id": "edge:bcc7fd74",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/config_driven.py",
      "type": "imports",
      "label": "导入 ConfigDrivenAgent"
    },
    {
      "id": "edge:77d94896",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 AgentAlreadyRegisteredError"
    },
    {
      "id": "edge:956d079d",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 AgentFrameworkError"
    },
    {
      "id": "edge:ab06e5fa",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 AgentNotFoundError"
    },
    {
      "id": "edge:89603d9e",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 AgentNotReadyError"
    },
    {
      "id": "edge:060e16df",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 AgentUnavailableError"
    },
    {
      "id": "edge:3b48b2f9",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 ConfigValidationError"
    },
    {
      "id": "edge:8c0682cd",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 EvolutionError"
    },
    {
      "id": "edge:c3fedf08",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 HandoffError"
    },
    {
      "id": "edge:030e57ec",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 LLMError"
    },
    {
      "id": "edge:97f2540b",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 LLMProviderError"
    },
    {
      "id": "edge:282062c4",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 ModelNotFoundError"
    },
    {
      "id": "edge:4c42c8a0",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 NoAvailableAgentError"
    },
    {
      "id": "edge:7d9be2cb",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 SchemaValidationError"
    },
    {
      "id": "edge:253f1b66",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskCancelledError"
    },
    {
      "id": "edge:6a62a8ba",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskDispatchError"
    },
    {
      "id": "edge:cf55b0d9",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskExecutionError"
    },
    {
      "id": "edge:9ab76d05",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskNotFoundError"
    },
    {
      "id": "edge:a45e5d58",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskTimeoutError"
    },
    {
      "id": "edge:8f8c8ae0",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 ToolExecutionError"
    },
    {
      "id": "edge:8c496acc",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 ToolNotFoundError"
    },
    {
      "id": "edge:c35e8b08",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 AgentCapability"
    },
    {
      "id": "edge:5acbe026",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 AgentStatus"
    },
    {
      "id": "edge:be52e8ea",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 CancellationToken"
    },
    {
      "id": "edge:f7840b3f",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 EvolutionEvent"
    },
    {
      "id": "edge:848ee9a5",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 HandoffMessage"
    },
    {
      "id": "edge:946626cb",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:9097b4fc",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskProgress"
    },
    {
      "id": "edge:4ef2ee77",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskResult"
    },
    {
      "id": "edge:7669f53d",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskStatus"
    },
    {
      "id": "edge:f083f351",
      "source": "file:src/agentkit/core/__init__.py",
      "target": "file:src/agentkit/core/headroom_compressor.py",
      "type": "imports",
      "label": "导入 HeadroomCompressor"
    },
    {
      "id": "edge:1e5a1997",
      "source": "file:src/agentkit/core/agent_pool.py",
      "target": "file:src/agentkit/core/config_driven.py",
      "type": "imports",
      "label": "导入 ConfigDrivenAgent"
    },
    {
      "id": "edge:6b2cb2c2",
      "source": "file:src/agentkit/core/agent_pool.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 AgentStatus"
    },
    {
      "id": "edge:e8fb15c7",
      "source": "file:src/agentkit/core/agent_pool.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActEngine"
    },
    {
      "id": "edge:c0af625a",
      "source": "file:src/agentkit/core/agent_pool.py",
      "target": "file:src/agentkit/llm/gateway.py",
      "type": "imports",
      "label": "导入 LLMGateway"
    },
    {
      "id": "edge:2b370eaf",
      "source": "file:src/agentkit/core/agent_pool.py",
      "target": "file:src/agentkit/skills/registry.py",
      "type": "imports",
      "label": "导入 SkillRegistry"
    },
    {
      "id": "edge:3df65fb0",
      "source": "file:src/agentkit/core/agent_pool.py",
      "target": "file:src/agentkit/tools/registry.py",
      "type": "imports",
      "label": "导入 ToolRegistry"
    },
    {
      "id": "edge:48bb347c",
      "source": "file:src/agentkit/core/agent_pool.py",
      "target": "file:src/agentkit/core/compressor.py",
      "type": "imports",
      "label": "导入 CompressionStrategy"
    },
    {
      "id": "edge:babbca9c",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 AgentNotReadyError"
    },
    {
      "id": "edge:97cbbe42",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 SchemaValidationError"
    },
    {
      "id": "edge:59d8a53c",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskCancelledError"
    },
    {
      "id": "edge:b9f36648",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskTimeoutError"
    },
    {
      "id": "edge:43433f72",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 AgentCapability"
    },
    {
      "id": "edge:e46883df",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 AgentStatus"
    },
    {
      "id": "edge:55b6f952",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 CancellationToken"
    },
    {
      "id": "edge:1862d206",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 HandoffMessage"
    },
    {
      "id": "edge:c3f09b73",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:990a336e",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskProgress"
    },
    {
      "id": "edge:9572e3e1",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskResult"
    },
    {
      "id": "edge:40dabd97",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskStatus"
    },
    {
      "id": "edge:effb9fc8",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/memory/base.py",
      "type": "imports",
      "label": "导入 Memory"
    },
    {
      "id": "edge:646c7d86",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:39abae1b",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/llm/gateway.py",
      "type": "imports",
      "label": "导入 LLMGateway"
    },
    {
      "id": "edge:39601d27",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 Skill"
    },
    {
      "id": "edge:87325fa4",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/quality/gate.py",
      "type": "imports",
      "label": "导入 QualityGate"
    },
    {
      "id": "edge:aa64d527",
      "source": "file:src/agentkit/core/base.py",
      "target": "file:src/agentkit/quality/gate.py",
      "type": "imports",
      "label": "导入 QualityGate"
    },
    {
      "id": "edge:ba033eea",
      "source": "file:src/agentkit/core/compressor.py",
      "target": "file:src/agentkit/core/headroom_compressor.py",
      "type": "imports",
      "label": "导入 HeadroomCompressor"
    },
    {
      "id": "edge:71748c85",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/core/base.py",
      "type": "imports",
      "label": "导入 BaseAgent"
    },
    {
      "id": "edge:bf7a825a",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 ConfigValidationError"
    },
    {
      "id": "edge:b572a809",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 AgentCapability"
    },
    {
      "id": "edge:2a3fa132",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:3e180398",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/evolution/lifecycle.py",
      "type": "imports",
      "label": "导入 EvolutionMixin"
    },
    {
      "id": "edge:781245ef",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/evolution/reflector.py",
      "type": "imports",
      "label": "导入 Reflector"
    },
    {
      "id": "edge:35b129f6",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/prompts/section.py",
      "type": "imports",
      "label": "导入 PromptSection"
    },
    {
      "id": "edge:a3824abc",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/prompts/template.py",
      "type": "imports",
      "label": "导入 PromptTemplate"
    },
    {
      "id": "edge:449002e9",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:f3e26a4d",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/tools/registry.py",
      "type": "imports",
      "label": "导入 ToolRegistry"
    },
    {
      "id": "edge:492e786a",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 SkillConfig"
    },
    {
      "id": "edge:0fa361f5",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 Skill"
    },
    {
      "id": "edge:8b4061f8",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/quality/gate.py",
      "type": "imports",
      "label": "导入 QualityGate"
    },
    {
      "id": "edge:7d302267",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/quality/output.py",
      "type": "imports",
      "label": "导入 OutputStandardizer"
    },
    {
      "id": "edge:3d59eed0",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/evolution/prompt_optimizer.py",
      "type": "imports",
      "label": "导入 Module"
    },
    {
      "id": "edge:76f9367f",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/evolution/prompt_optimizer.py",
      "type": "imports",
      "label": "导入 Signature"
    },
    {
      "id": "edge:81caf755",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/mcp/client.py",
      "type": "imports",
      "label": "导入 MCPClient"
    },
    {
      "id": "edge:458299b3",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/core/rewoo.py",
      "type": "imports",
      "label": "导入 ReWOOEngine"
    },
    {
      "id": "edge:a0c0e638",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/core/reflexion.py",
      "type": "imports",
      "label": "导入 ReflexionEngine"
    },
    {
      "id": "edge:10355fcd",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/llm/gateway.py",
      "type": "imports",
      "label": "导入 LLMGateway"
    },
    {
      "id": "edge:41f77175",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMProvider"
    },
    {
      "id": "edge:cd92fb56",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMRequest"
    },
    {
      "id": "edge:dacd673b",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMResponse"
    },
    {
      "id": "edge:8a64c197",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 TokenUsage"
    },
    {
      "id": "edge:c24c5a84",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActEngine"
    },
    {
      "id": "edge:a29f2019",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/memory/retriever.py",
      "type": "imports",
      "label": "导入 MemoryRetriever"
    },
    {
      "id": "edge:357b34bc",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/memory/working.py",
      "type": "imports",
      "label": "导入 WorkingMemory"
    },
    {
      "id": "edge:da1c9ecc",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/memory/semantic.py",
      "type": "imports",
      "label": "导入 SemanticMemory"
    },
    {
      "id": "edge:92ec32b9",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/memory/http_rag.py",
      "type": "imports",
      "label": "导入 HttpRAGService"
    },
    {
      "id": "edge:d4a07385",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskResult"
    },
    {
      "id": "edge:7faa0fa3",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskStatus"
    },
    {
      "id": "edge:b7ffd2dd",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskResult"
    },
    {
      "id": "edge:ed45d4ec",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskStatus"
    },
    {
      "id": "edge:7dfc1cd5",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/memory/episodic.py",
      "type": "imports",
      "label": "导入 EpisodicMemory"
    },
    {
      "id": "edge:05a33a35",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/memory/embedder.py",
      "type": "imports",
      "label": "导入 OpenAIEmbedder"
    },
    {
      "id": "edge:c8cfb518",
      "source": "file:src/agentkit/core/config_driven.py",
      "target": "file:src/agentkit/memory/embedder.py",
      "type": "imports",
      "label": "导入 EmbeddingCache"
    },
    {
      "id": "edge:15eb9ca5",
      "source": "file:src/agentkit/core/dispatcher.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 NoAvailableAgentError"
    },
    {
      "id": "edge:b2af5a97",
      "source": "file:src/agentkit/core/dispatcher.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskDispatchError"
    },
    {
      "id": "edge:b4862006",
      "source": "file:src/agentkit/core/dispatcher.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskNotFoundError"
    },
    {
      "id": "edge:321aa350",
      "source": "file:src/agentkit/core/dispatcher.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 AgentStatus"
    },
    {
      "id": "edge:f7d908cd",
      "source": "file:src/agentkit/core/dispatcher.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:4e47c6e2",
      "source": "file:src/agentkit/core/dispatcher.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskProgress"
    },
    {
      "id": "edge:32388909",
      "source": "file:src/agentkit/core/dispatcher.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskResult"
    },
    {
      "id": "edge:478cbb10",
      "source": "file:src/agentkit/core/dispatcher.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskStatus"
    },
    {
      "id": "edge:45fb819d",
      "source": "file:src/agentkit/core/headroom_compressor.py",
      "target": "file:src/agentkit/core/compressor.py",
      "type": "imports",
      "label": "导入 CompressionStrategy"
    },
    {
      "id": "edge:bad937d6",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:b180e9cd",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskResult"
    },
    {
      "id": "edge:e1b06522",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskStatus"
    },
    {
      "id": "edge:065f9f6c",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "file:src/agentkit/core/shared_workspace.py",
      "type": "imports",
      "label": "导入 SharedWorkspace"
    },
    {
      "id": "edge:b31dd748",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "file:src/agentkit/core/plan_executor.py",
      "type": "imports",
      "label": "导入 PlanExecutor"
    },
    {
      "id": "edge:054c0222",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "file:src/agentkit/core/plan_checker.py",
      "type": "imports",
      "label": "导入 PlanChecker"
    },
    {
      "id": "edge:d1cd9776",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "file:src/agentkit/bus/message.py",
      "type": "imports",
      "label": "导入 AgentMessage"
    },
    {
      "id": "edge:0bd09e1c",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "file:src/agentkit/bus/message.py",
      "type": "imports",
      "label": "导入 AgentMessage"
    },
    {
      "id": "edge:2cd8aebe",
      "source": "file:src/agentkit/core/orchestrator.py",
      "target": "file:src/agentkit/bus/message.py",
      "type": "imports",
      "label": "导入 AgentMessage"
    },
    {
      "id": "edge:bd819f0b",
      "source": "file:src/agentkit/core/plan_checker.py",
      "target": "file:src/agentkit/core/plan_schema.py",
      "type": "imports",
      "label": "导入 ExecutionPlan"
    },
    {
      "id": "edge:211cb7b4",
      "source": "file:src/agentkit/core/plan_checker.py",
      "target": "file:src/agentkit/core/plan_schema.py",
      "type": "imports",
      "label": "导入 PlanStep"
    },
    {
      "id": "edge:f86693ba",
      "source": "file:src/agentkit/core/plan_checker.py",
      "target": "file:src/agentkit/core/plan_schema.py",
      "type": "imports",
      "label": "导入 PlanStepStatus"
    },
    {
      "id": "edge:a221df0f",
      "source": "file:src/agentkit/core/plan_checker.py",
      "target": "file:src/agentkit/core/plan_executor.py",
      "type": "imports",
      "label": "导入 PlanExecutionResult"
    },
    {
      "id": "edge:1249eaa4",
      "source": "file:src/agentkit/core/plan_checker.py",
      "target": "file:src/agentkit/core/plan_executor.py",
      "type": "imports",
      "label": "导入 StepExecutionResult"
    },
    {
      "id": "edge:57d97449",
      "source": "file:src/agentkit/core/plan_checker.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 QualityGateConfig"
    },
    {
      "id": "edge:3f57a3a8",
      "source": "file:src/agentkit/core/plan_checker.py",
      "target": "file:src/agentkit/evolution/experience_schema.py",
      "type": "imports",
      "label": "导入 TaskExperience"
    },
    {
      "id": "edge:e1fd14ac",
      "source": "file:src/agentkit/core/plan_executor.py",
      "target": "file:src/agentkit/core/plan_schema.py",
      "type": "imports",
      "label": "导入 ExecutionPlan"
    },
    {
      "id": "edge:dc88d7d0",
      "source": "file:src/agentkit/core/plan_executor.py",
      "target": "file:src/agentkit/core/plan_schema.py",
      "type": "imports",
      "label": "导入 PlanStep"
    },
    {
      "id": "edge:0419f8e4",
      "source": "file:src/agentkit/core/plan_executor.py",
      "target": "file:src/agentkit/core/plan_schema.py",
      "type": "imports",
      "label": "导入 PlanStepStatus"
    },
    {
      "id": "edge:721b7c69",
      "source": "file:src/agentkit/core/plan_executor.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:91743385",
      "source": "file:src/agentkit/core/plan_executor.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskResult"
    },
    {
      "id": "edge:af917da8",
      "source": "file:src/agentkit/core/plan_executor.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskStatus"
    },
    {
      "id": "edge:440ea8aa",
      "source": "file:src/agentkit/core/protocol.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskCancelledError"
    },
    {
      "id": "edge:9d6c0164",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskCancelledError"
    },
    {
      "id": "edge:0b6feec3",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskTimeoutError"
    },
    {
      "id": "edge:6aabd9c8",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 CancellationToken"
    },
    {
      "id": "edge:611e1a82",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/llm/gateway.py",
      "type": "imports",
      "label": "导入 LLMGateway"
    },
    {
      "id": "edge:688a963a",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMResponse"
    },
    {
      "id": "edge:2a7b190e",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:7df0980c",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 get_tracer"
    },
    {
      "id": "edge:c1d10527",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 start_span"
    },
    {
      "id": "edge:6795da8d",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 _OTEL_AVAILABLE"
    },
    {
      "id": "edge:494df02d",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/telemetry/metrics.py",
      "type": "imports",
      "label": "导入 agent_request_counter"
    },
    {
      "id": "edge:d503e54c",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/telemetry/metrics.py",
      "type": "imports",
      "label": "导入 agent_duration_histogram"
    },
    {
      "id": "edge:e4c182ea",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/core/compressor.py",
      "type": "imports",
      "label": "导入 CompressionStrategy"
    },
    {
      "id": "edge:f0baaaaa",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/core/compressor.py",
      "type": "imports",
      "label": "导入 ContextCompressor"
    },
    {
      "id": "edge:cf5481c5",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/core/trace.py",
      "type": "imports",
      "label": "导入 TraceRecorder"
    },
    {
      "id": "edge:9e4ef4c8",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/memory/retriever.py",
      "type": "imports",
      "label": "导入 MemoryRetriever"
    },
    {
      "id": "edge:26c7a561",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMResponse"
    },
    {
      "id": "edge:f81c54a9",
      "source": "file:src/agentkit/core/react.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 TokenUsage"
    },
    {
      "id": "edge:3546326a",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskCancelledError"
    },
    {
      "id": "edge:aea49904",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskTimeoutError"
    },
    {
      "id": "edge:0e1988de",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 CancellationToken"
    },
    {
      "id": "edge:3d779dcb",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActEngine"
    },
    {
      "id": "edge:ce9c9b96",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActEvent"
    },
    {
      "id": "edge:3d0efdc9",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActResult"
    },
    {
      "id": "edge:f0ed0096",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActStep"
    },
    {
      "id": "edge:dc35fbc8",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/llm/gateway.py",
      "type": "imports",
      "label": "导入 LLMGateway"
    },
    {
      "id": "edge:070a3be1",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:7bb278e2",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 start_span"
    },
    {
      "id": "edge:0359f76e",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 _OTEL_AVAILABLE"
    },
    {
      "id": "edge:a5da8fa2",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/telemetry/metrics.py",
      "type": "imports",
      "label": "导入 agent_request_counter"
    },
    {
      "id": "edge:dd46448f",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/telemetry/metrics.py",
      "type": "imports",
      "label": "导入 agent_duration_histogram"
    },
    {
      "id": "edge:a35204a6",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/core/compressor.py",
      "type": "imports",
      "label": "导入 CompressionStrategy"
    },
    {
      "id": "edge:4c054602",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/core/trace.py",
      "type": "imports",
      "label": "导入 TraceRecorder"
    },
    {
      "id": "edge:2b7251cf",
      "source": "file:src/agentkit/core/reflexion.py",
      "target": "file:src/agentkit/memory/retriever.py",
      "type": "imports",
      "label": "导入 MemoryRetriever"
    },
    {
      "id": "edge:ba3b3db7",
      "source": "file:src/agentkit/core/registry.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 AgentNotFoundError"
    },
    {
      "id": "edge:cdda5e06",
      "source": "file:src/agentkit/core/registry.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 AgentUnavailableError"
    },
    {
      "id": "edge:213e0dcf",
      "source": "file:src/agentkit/core/registry.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 NoAvailableAgentError"
    },
    {
      "id": "edge:bf5207ab",
      "source": "file:src/agentkit/core/registry.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 AgentCapability"
    },
    {
      "id": "edge:ba588c45",
      "source": "file:src/agentkit/core/registry.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 AgentStatus"
    },
    {
      "id": "edge:6b16ee37",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskCancelledError"
    },
    {
      "id": "edge:44421a1c",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 TaskTimeoutError"
    },
    {
      "id": "edge:a815f57c",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 CancellationToken"
    },
    {
      "id": "edge:4454fd22",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActEngine"
    },
    {
      "id": "edge:36d8b05d",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActEvent"
    },
    {
      "id": "edge:bb8fc0eb",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActResult"
    },
    {
      "id": "edge:fa4b1cb9",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActStep"
    },
    {
      "id": "edge:ef7b3ce5",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/llm/gateway.py",
      "type": "imports",
      "label": "导入 LLMGateway"
    },
    {
      "id": "edge:235c6414",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMResponse"
    },
    {
      "id": "edge:17705cda",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:f538c01a",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 get_tracer"
    },
    {
      "id": "edge:8b37e172",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 start_span"
    },
    {
      "id": "edge:d576e786",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 _OTEL_AVAILABLE"
    },
    {
      "id": "edge:d1a5178a",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/telemetry/metrics.py",
      "type": "imports",
      "label": "导入 agent_request_counter"
    },
    {
      "id": "edge:d3ab7223",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/telemetry/metrics.py",
      "type": "imports",
      "label": "导入 agent_duration_histogram"
    },
    {
      "id": "edge:9e541b36",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/core/compressor.py",
      "type": "imports",
      "label": "导入 CompressionStrategy"
    },
    {
      "id": "edge:5c706ca9",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/core/compressor.py",
      "type": "imports",
      "label": "导入 ContextCompressor"
    },
    {
      "id": "edge:48ef7c84",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/core/trace.py",
      "type": "imports",
      "label": "导入 TraceRecorder"
    },
    {
      "id": "edge:53f5a165",
      "source": "file:src/agentkit/core/rewoo.py",
      "target": "file:src/agentkit/memory/retriever.py",
      "type": "imports",
      "label": "导入 MemoryRetriever"
    },
    {
      "id": "edge:44fd1bd4",
      "source": "file:src/agentkit/core/standalone.py",
      "target": "file:src/agentkit/core/config_driven.py",
      "type": "imports",
      "label": "导入 AgentConfig"
    },
    {
      "id": "edge:7872375e",
      "source": "file:src/agentkit/core/standalone.py",
      "target": "file:src/agentkit/core/config_driven.py",
      "type": "imports",
      "label": "导入 ConfigDrivenAgent"
    },
    {
      "id": "edge:0ed1c83a",
      "source": "file:src/agentkit/core/standalone.py",
      "target": "file:src/agentkit/tools/function_tool.py",
      "type": "imports",
      "label": "导入 FunctionTool"
    },
    {
      "id": "edge:78ff9448",
      "source": "file:src/agentkit/core/standalone.py",
      "target": "file:src/agentkit/tools/registry.py",
      "type": "imports",
      "label": "导入 ToolRegistry"
    },
    {
      "id": "edge:80208ee3",
      "source": "file:src/agentkit/evaluation/__init__.py",
      "target": "file:src/agentkit/evaluation/ragas_evaluator.py",
      "type": "imports",
      "label": "导入 EvalDatasetBuilder"
    },
    {
      "id": "edge:525fb088",
      "source": "file:src/agentkit/evaluation/__init__.py",
      "target": "file:src/agentkit/evaluation/ragas_evaluator.py",
      "type": "imports",
      "label": "导入 EvalMetrics"
    },
    {
      "id": "edge:321931f8",
      "source": "file:src/agentkit/evaluation/__init__.py",
      "target": "file:src/agentkit/evaluation/ragas_evaluator.py",
      "type": "imports",
      "label": "导入 EvalResult"
    },
    {
      "id": "edge:eebff4f8",
      "source": "file:src/agentkit/evaluation/__init__.py",
      "target": "file:src/agentkit/evaluation/ragas_evaluator.py",
      "type": "imports",
      "label": "导入 EvalSample"
    },
    {
      "id": "edge:74f9d459",
      "source": "file:src/agentkit/evaluation/__init__.py",
      "target": "file:src/agentkit/evaluation/ragas_evaluator.py",
      "type": "imports",
      "label": "导入 RagasEvaluator"
    },
    {
      "id": "edge:4ed1d778",
      "source": "file:src/agentkit/evaluation/ragas_evaluator.py",
      "target": "file:src/agentkit/memory/relevance_scorer.py",
      "type": "imports",
      "label": "导入 RelevanceScorer"
    },
    {
      "id": "edge:80f1948e",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/reflector.py",
      "type": "imports",
      "label": "导入 Reflector"
    },
    {
      "id": "edge:55c59121",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/prompt_optimizer.py",
      "type": "imports",
      "label": "导入 BootstrapPromptOptimizer"
    },
    {
      "id": "edge:c25bb636",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/prompt_optimizer.py",
      "type": "imports",
      "label": "导入 PromptOptimizer"
    },
    {
      "id": "edge:3393a0e7",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/prompt_optimizer.py",
      "type": "imports",
      "label": "导入 LLMPromptOptimizer"
    },
    {
      "id": "edge:8d9801cb",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/prompt_optimizer.py",
      "type": "imports",
      "label": "导入 Signature"
    },
    {
      "id": "edge:75a2faae",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/prompt_optimizer.py",
      "type": "imports",
      "label": "导入 Module"
    },
    {
      "id": "edge:3b80574e",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/prompt_optimizer.py",
      "type": "imports",
      "label": "导入 create_prompt_optimizer"
    },
    {
      "id": "edge:027090cc",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/strategy_tuner.py",
      "type": "imports",
      "label": "导入 StrategyTuner"
    },
    {
      "id": "edge:0683b110",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/ab_tester.py",
      "type": "imports",
      "label": "导入 ABTester"
    },
    {
      "id": "edge:f1d71753",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/evolution_store.py",
      "type": "imports",
      "label": "导入 EvolutionStore"
    },
    {
      "id": "edge:9eb34526",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/evolution_store.py",
      "type": "imports",
      "label": "导入 EvolutionStoreProtocol"
    },
    {
      "id": "edge:740ab917",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/evolution_store.py",
      "type": "imports",
      "label": "导入 InMemoryEvolutionStore"
    },
    {
      "id": "edge:c778d6c2",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/evolution_store.py",
      "type": "imports",
      "label": "导入 PersistentEvolutionStore"
    },
    {
      "id": "edge:d2308003",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/evolution_store.py",
      "type": "imports",
      "label": "导入 create_evolution_store"
    },
    {
      "id": "edge:2d462159",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/lifecycle.py",
      "type": "imports",
      "label": "导入 EvolutionMixin"
    },
    {
      "id": "edge:30a87d85",
      "source": "file:src/agentkit/evolution/__init__.py",
      "target": "file:src/agentkit/evolution/lifecycle.py",
      "type": "imports",
      "label": "导入 EvolutionLogEntry"
    },
    {
      "id": "edge:4c5b937f",
      "source": "file:src/agentkit/evolution/ab_tester.py",
      "target": "file:src/agentkit/evolution/evolution_store.py",
      "type": "imports",
      "label": "导入 InMemoryEvolutionStore"
    },
    {
      "id": "edge:538d7ac5",
      "source": "file:src/agentkit/evolution/evolution_store.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 EvolutionEvent"
    },
    {
      "id": "edge:a1f6ed11",
      "source": "file:src/agentkit/evolution/evolution_store.py",
      "target": "file:src/agentkit/evolution/models.py",
      "type": "imports",
      "label": "导入 ABTestResultModel"
    },
    {
      "id": "edge:edcc2a75",
      "source": "file:src/agentkit/evolution/evolution_store.py",
      "target": "file:src/agentkit/evolution/models.py",
      "type": "imports",
      "label": "导入 Base"
    },
    {
      "id": "edge:a26291c7",
      "source": "file:src/agentkit/evolution/evolution_store.py",
      "target": "file:src/agentkit/evolution/models.py",
      "type": "imports",
      "label": "导入 EvolutionEventModel"
    },
    {
      "id": "edge:2ab173e2",
      "source": "file:src/agentkit/evolution/evolution_store.py",
      "target": "file:src/agentkit/evolution/models.py",
      "type": "imports",
      "label": "导入 SkillVersionModel"
    },
    {
      "id": "edge:c7851700",
      "source": "file:src/agentkit/evolution/evolution_store.py",
      "target": "file:src/agentkit/evolution/pg_store.py",
      "type": "imports",
      "label": "导入 PostgreSQLEvolutionStore"
    },
    {
      "id": "edge:7f0d8b28",
      "source": "file:src/agentkit/evolution/experience_store.py",
      "target": "file:src/agentkit/evolution/experience_schema.py",
      "type": "imports",
      "label": "导入 EvolutionMetrics"
    },
    {
      "id": "edge:9c1e2f69",
      "source": "file:src/agentkit/evolution/experience_store.py",
      "target": "file:src/agentkit/evolution/experience_schema.py",
      "type": "imports",
      "label": "导入 TaskExperience"
    },
    {
      "id": "edge:a84cf64b",
      "source": "file:src/agentkit/evolution/experience_store.py",
      "target": "file:src/agentkit/memory/embedder.py",
      "type": "imports",
      "label": "导入 Embedder"
    },
    {
      "id": "edge:2224fff1",
      "source": "file:src/agentkit/evolution/experience_store.py",
      "target": "file:src/agentkit/utils/vector_math.py",
      "type": "imports",
      "label": "导入 compute_cosine_similarity"
    },
    {
      "id": "edge:bb4e4fed",
      "source": "file:src/agentkit/evolution/fitness.py",
      "target": "file:src/agentkit/evolution/genetic.py",
      "type": "imports",
      "label": "导入 FitnessScore"
    },
    {
      "id": "edge:c9a55432",
      "source": "file:src/agentkit/evolution/genetic.py",
      "target": "file:src/agentkit/evolution/prompt_optimizer.py",
      "type": "imports",
      "label": "导入 Module"
    },
    {
      "id": "edge:fb4306e4",
      "source": "file:src/agentkit/evolution/genetic.py",
      "target": "file:src/agentkit/evolution/prompt_optimizer.py",
      "type": "imports",
      "label": "导入 Signature"
    },
    {
      "id": "edge:cb437459",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 EvolutionEvent"
    },
    {
      "id": "edge:6ae4b66e",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:35623ec2",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskResult"
    },
    {
      "id": "edge:b9faeb1c",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/evolution/ab_tester.py",
      "type": "imports",
      "label": "导入 ABTestConfig"
    },
    {
      "id": "edge:a10a6e2b",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/evolution/ab_tester.py",
      "type": "imports",
      "label": "导入 ABTestResult"
    },
    {
      "id": "edge:8f9756f6",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/evolution/ab_tester.py",
      "type": "imports",
      "label": "导入 ABTester"
    },
    {
      "id": "edge:2a360b63",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/evolution/evolution_store.py",
      "type": "imports",
      "label": "导入 EvolutionStore"
    },
    {
      "id": "edge:ea4b49db",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/evolution/llm_reflector.py",
      "type": "imports",
      "label": "导入 LLMReflector"
    },
    {
      "id": "edge:3ab92c44",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/evolution/prompt_optimizer.py",
      "type": "imports",
      "label": "导入 Module"
    },
    {
      "id": "edge:d4bcc2ce",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/evolution/prompt_optimizer.py",
      "type": "imports",
      "label": "导入 PromptOptimizer"
    },
    {
      "id": "edge:25102006",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/evolution/reflector.py",
      "type": "imports",
      "label": "导入 Reflection"
    },
    {
      "id": "edge:d331d321",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/evolution/reflector.py",
      "type": "imports",
      "label": "导入 Reflector"
    },
    {
      "id": "edge:682ffaa6",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/evolution/reflector.py",
      "type": "imports",
      "label": "导入 RuleBasedReflector"
    },
    {
      "id": "edge:629fe339",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/evolution/strategy_tuner.py",
      "type": "imports",
      "label": "导入 StrategyConfig"
    },
    {
      "id": "edge:fb137081",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/evolution/strategy_tuner.py",
      "type": "imports",
      "label": "导入 StrategyTuner"
    },
    {
      "id": "edge:0190d517",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/memory/profile.py",
      "type": "imports",
      "label": "导入 MemoryStore"
    },
    {
      "id": "edge:c202a0ca",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/evolution/prompt_optimizer.py",
      "type": "imports",
      "label": "导入 LLMPromptOptimizer"
    },
    {
      "id": "edge:439a273f",
      "source": "file:src/agentkit/evolution/lifecycle.py",
      "target": "file:src/agentkit/tools/memory_tool.py",
      "type": "imports",
      "label": "导入 MemoryTool"
    },
    {
      "id": "edge:69d342f4",
      "source": "file:src/agentkit/evolution/llm_reflector.py",
      "target": "file:src/agentkit/core/trace.py",
      "type": "imports",
      "label": "导入 ExecutionTrace"
    },
    {
      "id": "edge:52cbfa11",
      "source": "file:src/agentkit/evolution/llm_reflector.py",
      "target": "file:src/agentkit/evolution/reflector.py",
      "type": "imports",
      "label": "导入 Reflection"
    },
    {
      "id": "edge:0f33f061",
      "source": "file:src/agentkit/evolution/path_optimizer.py",
      "target": "file:src/agentkit/evolution/experience_store.py",
      "type": "imports",
      "label": "导入 InMemoryExperienceStore"
    },
    {
      "id": "edge:649670d2",
      "source": "file:src/agentkit/evolution/pg_store.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 EvolutionEvent"
    },
    {
      "id": "edge:85efc64e",
      "source": "file:src/agentkit/evolution/reflector.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:7df33738",
      "source": "file:src/agentkit/evolution/reflector.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskResult"
    },
    {
      "id": "edge:819eadc3",
      "source": "file:src/agentkit/evolution/reflector.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskStatus"
    },
    {
      "id": "edge:7c765a7d",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/config.py",
      "type": "imports",
      "label": "导入 LLMConfig"
    },
    {
      "id": "edge:0843cd34",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/config.py",
      "type": "imports",
      "label": "导入 ProviderConfig"
    },
    {
      "id": "edge:8e8cc629",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/gateway.py",
      "type": "imports",
      "label": "导入 LLMGateway"
    },
    {
      "id": "edge:5424bb25",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMProvider"
    },
    {
      "id": "edge:5516745e",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMRequest"
    },
    {
      "id": "edge:3d8143da",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMResponse"
    },
    {
      "id": "edge:d9293b93",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 TokenUsage"
    },
    {
      "id": "edge:ebacdfaf",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 ToolCall"
    },
    {
      "id": "edge:0bd82d60",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/providers/anthropic.py",
      "type": "imports",
      "label": "导入 AnthropicProvider"
    },
    {
      "id": "edge:adceab8e",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/providers/openai.py",
      "type": "imports",
      "label": "导入 OpenAICompatibleProvider"
    },
    {
      "id": "edge:18f0d1e6",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/providers/tracker.py",
      "type": "imports",
      "label": "导入 UsageSummary"
    },
    {
      "id": "edge:37907d82",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/providers/tracker.py",
      "type": "imports",
      "label": "导入 UsageTracker"
    },
    {
      "id": "edge:0893208e",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/providers/usage_store.py",
      "type": "imports",
      "label": "导入 UsageRecord"
    },
    {
      "id": "edge:b2191d74",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 CircuitBreaker"
    },
    {
      "id": "edge:e213a91d",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 CircuitBreakerConfig"
    },
    {
      "id": "edge:7bb289ef",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 CircuitOpenError"
    },
    {
      "id": "edge:f32483dc",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 CircuitState"
    },
    {
      "id": "edge:aa3cef48",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 RetryConfig"
    },
    {
      "id": "edge:c224ab48",
      "source": "file:src/agentkit/llm/__init__.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 RetryPolicy"
    },
    {
      "id": "edge:a329973c",
      "source": "file:src/agentkit/llm/cache.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMResponse"
    },
    {
      "id": "edge:e999de26",
      "source": "file:src/agentkit/llm/cache.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 TokenUsage"
    },
    {
      "id": "edge:611e0728",
      "source": "file:src/agentkit/llm/cache.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 ToolCall"
    },
    {
      "id": "edge:1aa02da6",
      "source": "file:src/agentkit/llm/cache.py",
      "target": "file:src/agentkit/utils/vector_math.py",
      "type": "imports",
      "label": "导入 compute_cosine_similarity"
    },
    {
      "id": "edge:dd98709b",
      "source": "file:src/agentkit/llm/config.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 CircuitBreakerConfig"
    },
    {
      "id": "edge:f4ccb251",
      "source": "file:src/agentkit/llm/config.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 RetryConfig"
    },
    {
      "id": "edge:f006e364",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 LLMProviderError"
    },
    {
      "id": "edge:422bd5cd",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 ModelNotFoundError"
    },
    {
      "id": "edge:616731ab",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/llm/config.py",
      "type": "imports",
      "label": "导入 LLMConfig"
    },
    {
      "id": "edge:5e17249a",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMProvider"
    },
    {
      "id": "edge:4e7898d6",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMRequest"
    },
    {
      "id": "edge:ec0f3af8",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMResponse"
    },
    {
      "id": "edge:04caa119",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 StreamChunk"
    },
    {
      "id": "edge:7192c1db",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 TokenUsage"
    },
    {
      "id": "edge:d0e9efc2",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/llm/providers/tracker.py",
      "type": "imports",
      "label": "导入 UsageSummary"
    },
    {
      "id": "edge:91e596d1",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/llm/providers/tracker.py",
      "type": "imports",
      "label": "导入 UsageTracker"
    },
    {
      "id": "edge:d7f3cdc8",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 get_tracer"
    },
    {
      "id": "edge:14a82491",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 _OTEL_AVAILABLE"
    },
    {
      "id": "edge:8a067a48",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/telemetry/metrics.py",
      "type": "imports",
      "label": "导入 llm_token_histogram"
    },
    {
      "id": "edge:f989be18",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/llm/cache.py",
      "type": "imports",
      "label": "导入 create_llm_cache"
    },
    {
      "id": "edge:74e5c37e",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/memory/embedder.py",
      "type": "imports",
      "label": "导入 OpenAIEmbedder"
    },
    {
      "id": "edge:e6e46830",
      "source": "file:src/agentkit/llm/gateway.py",
      "target": "file:src/agentkit/llm/cache_key.py",
      "type": "imports",
      "label": "导入 generate_cache_key"
    },
    {
      "id": "edge:44141011",
      "source": "file:src/agentkit/llm/providers/__init__.py",
      "target": "file:src/agentkit/llm/providers/anthropic.py",
      "type": "imports",
      "label": "导入 AnthropicProvider"
    },
    {
      "id": "edge:e669f499",
      "source": "file:src/agentkit/llm/providers/__init__.py",
      "target": "file:src/agentkit/llm/providers/doubao.py",
      "type": "imports",
      "label": "导入 DoubaoProvider"
    },
    {
      "id": "edge:5381e00c",
      "source": "file:src/agentkit/llm/providers/__init__.py",
      "target": "file:src/agentkit/llm/providers/gemini.py",
      "type": "imports",
      "label": "导入 GeminiProvider"
    },
    {
      "id": "edge:3b0f97fb",
      "source": "file:src/agentkit/llm/providers/__init__.py",
      "target": "file:src/agentkit/llm/providers/openai.py",
      "type": "imports",
      "label": "导入 OpenAICompatibleProvider"
    },
    {
      "id": "edge:5d3e45b0",
      "source": "file:src/agentkit/llm/providers/__init__.py",
      "target": "file:src/agentkit/llm/providers/tracker.py",
      "type": "imports",
      "label": "导入 UsageSummary"
    },
    {
      "id": "edge:3d510f0e",
      "source": "file:src/agentkit/llm/providers/__init__.py",
      "target": "file:src/agentkit/llm/providers/tracker.py",
      "type": "imports",
      "label": "导入 UsageTracker"
    },
    {
      "id": "edge:3e638b03",
      "source": "file:src/agentkit/llm/providers/__init__.py",
      "target": "file:src/agentkit/llm/providers/usage_store.py",
      "type": "imports",
      "label": "导入 UsageRecord"
    },
    {
      "id": "edge:74fac983",
      "source": "file:src/agentkit/llm/providers/__init__.py",
      "target": "file:src/agentkit/llm/providers/wenxin.py",
      "type": "imports",
      "label": "导入 WenxinProvider"
    },
    {
      "id": "edge:6d01b329",
      "source": "file:src/agentkit/llm/providers/__init__.py",
      "target": "file:src/agentkit/llm/providers/yuanbao.py",
      "type": "imports",
      "label": "导入 YuanbaoProvider"
    },
    {
      "id": "edge:3cc107f9",
      "source": "file:src/agentkit/llm/providers/anthropic.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 LLMProviderError"
    },
    {
      "id": "edge:5d1f4fa4",
      "source": "file:src/agentkit/llm/providers/anthropic.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMProvider"
    },
    {
      "id": "edge:932bab7b",
      "source": "file:src/agentkit/llm/providers/anthropic.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMRequest"
    },
    {
      "id": "edge:2d5f0bf9",
      "source": "file:src/agentkit/llm/providers/anthropic.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMResponse"
    },
    {
      "id": "edge:cb987d7c",
      "source": "file:src/agentkit/llm/providers/anthropic.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 StreamChunk"
    },
    {
      "id": "edge:4a4306dc",
      "source": "file:src/agentkit/llm/providers/anthropic.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 TokenUsage"
    },
    {
      "id": "edge:694d3297",
      "source": "file:src/agentkit/llm/providers/anthropic.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 ToolCall"
    },
    {
      "id": "edge:c19eb563",
      "source": "file:src/agentkit/llm/providers/anthropic.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 CircuitBreaker"
    },
    {
      "id": "edge:ad3026df",
      "source": "file:src/agentkit/llm/providers/anthropic.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 CircuitBreakerConfig"
    },
    {
      "id": "edge:8782195b",
      "source": "file:src/agentkit/llm/providers/anthropic.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 RetryConfig"
    },
    {
      "id": "edge:ca629169",
      "source": "file:src/agentkit/llm/providers/anthropic.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 RetryPolicy"
    },
    {
      "id": "edge:94ae1f82",
      "source": "file:src/agentkit/llm/providers/doubao.py",
      "target": "file:src/agentkit/llm/providers/openai.py",
      "type": "imports",
      "label": "导入 OpenAICompatibleProvider"
    },
    {
      "id": "edge:616b05e2",
      "source": "file:src/agentkit/llm/providers/gemini.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 LLMProviderError"
    },
    {
      "id": "edge:4ee95f63",
      "source": "file:src/agentkit/llm/providers/gemini.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMProvider"
    },
    {
      "id": "edge:94e830e6",
      "source": "file:src/agentkit/llm/providers/gemini.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMRequest"
    },
    {
      "id": "edge:d4f35c3c",
      "source": "file:src/agentkit/llm/providers/gemini.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMResponse"
    },
    {
      "id": "edge:7189e3f5",
      "source": "file:src/agentkit/llm/providers/gemini.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 StreamChunk"
    },
    {
      "id": "edge:79adebc1",
      "source": "file:src/agentkit/llm/providers/gemini.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 TokenUsage"
    },
    {
      "id": "edge:d1c6fbde",
      "source": "file:src/agentkit/llm/providers/gemini.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 ToolCall"
    },
    {
      "id": "edge:58b57f2b",
      "source": "file:src/agentkit/llm/providers/gemini.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 CircuitBreaker"
    },
    {
      "id": "edge:f08c41cf",
      "source": "file:src/agentkit/llm/providers/gemini.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 CircuitBreakerConfig"
    },
    {
      "id": "edge:ab2699e5",
      "source": "file:src/agentkit/llm/providers/gemini.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 RetryConfig"
    },
    {
      "id": "edge:6841ea16",
      "source": "file:src/agentkit/llm/providers/gemini.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 RetryPolicy"
    },
    {
      "id": "edge:807d2eb4",
      "source": "file:src/agentkit/llm/providers/openai.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 LLMProviderError"
    },
    {
      "id": "edge:c25d18a8",
      "source": "file:src/agentkit/llm/providers/openai.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMProvider"
    },
    {
      "id": "edge:da82ad4d",
      "source": "file:src/agentkit/llm/providers/openai.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMRequest"
    },
    {
      "id": "edge:8ed3022d",
      "source": "file:src/agentkit/llm/providers/openai.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMResponse"
    },
    {
      "id": "edge:416bd66a",
      "source": "file:src/agentkit/llm/providers/openai.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 StreamChunk"
    },
    {
      "id": "edge:509a9335",
      "source": "file:src/agentkit/llm/providers/openai.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 TokenUsage"
    },
    {
      "id": "edge:f0488c0d",
      "source": "file:src/agentkit/llm/providers/openai.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 ToolCall"
    },
    {
      "id": "edge:9e0183c2",
      "source": "file:src/agentkit/llm/providers/openai.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 CircuitBreaker"
    },
    {
      "id": "edge:601ca941",
      "source": "file:src/agentkit/llm/providers/openai.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 CircuitBreakerConfig"
    },
    {
      "id": "edge:2fe51dae",
      "source": "file:src/agentkit/llm/providers/openai.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 RetryConfig"
    },
    {
      "id": "edge:b5cc4d39",
      "source": "file:src/agentkit/llm/providers/openai.py",
      "target": "file:src/agentkit/llm/retry.py",
      "type": "imports",
      "label": "导入 RetryPolicy"
    },
    {
      "id": "edge:53c7d5af",
      "source": "file:src/agentkit/llm/providers/tracker.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 TokenUsage"
    },
    {
      "id": "edge:a869f39a",
      "source": "file:src/agentkit/llm/providers/tracker.py",
      "target": "file:src/agentkit/llm/providers/usage_store.py",
      "type": "imports",
      "label": "导入 InMemoryUsageStore"
    },
    {
      "id": "edge:6bbd8e18",
      "source": "file:src/agentkit/llm/providers/tracker.py",
      "target": "file:src/agentkit/llm/providers/usage_store.py",
      "type": "imports",
      "label": "导入 UsageStore"
    },
    {
      "id": "edge:992c0e26",
      "source": "file:src/agentkit/llm/providers/tracker.py",
      "target": "file:src/agentkit/llm/providers/usage_store.py",
      "type": "imports",
      "label": "导入 UsageSummary"
    },
    {
      "id": "edge:d33745e8",
      "source": "file:src/agentkit/llm/providers/usage_store.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 TokenUsage"
    },
    {
      "id": "edge:4bd4515a",
      "source": "file:src/agentkit/llm/providers/wenxin.py",
      "target": "file:src/agentkit/llm/providers/openai.py",
      "type": "imports",
      "label": "导入 OpenAICompatibleProvider"
    },
    {
      "id": "edge:9d188570",
      "source": "file:src/agentkit/llm/providers/wenxin.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMRequest"
    },
    {
      "id": "edge:01872ba2",
      "source": "file:src/agentkit/llm/providers/wenxin.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMResponse"
    },
    {
      "id": "edge:c4a0ec7b",
      "source": "file:src/agentkit/llm/providers/yuanbao.py",
      "target": "file:src/agentkit/llm/providers/openai.py",
      "type": "imports",
      "label": "导入 OpenAICompatibleProvider"
    },
    {
      "id": "edge:bdad0373",
      "source": "file:src/agentkit/llm/providers/yuanbao.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMRequest"
    },
    {
      "id": "edge:0c4af2d5",
      "source": "file:src/agentkit/llm/providers/yuanbao.py",
      "target": "file:src/agentkit/llm/protocol.py",
      "type": "imports",
      "label": "导入 LLMResponse"
    },
    {
      "id": "edge:9a466dab",
      "source": "file:src/agentkit/llm/retry.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 LLMProviderError"
    },
    {
      "id": "edge:1590d0d6",
      "source": "file:src/agentkit/marketplace/__init__.py",
      "target": "file:src/agentkit/marketplace/auction.py",
      "type": "imports",
      "label": "导入 AuctionHouse"
    },
    {
      "id": "edge:4614355b",
      "source": "file:src/agentkit/marketplace/__init__.py",
      "target": "file:src/agentkit/marketplace/auction.py",
      "type": "imports",
      "label": "导入 AuctionResult"
    },
    {
      "id": "edge:9eecf155",
      "source": "file:src/agentkit/marketplace/__init__.py",
      "target": "file:src/agentkit/marketplace/auction.py",
      "type": "imports",
      "label": "导入 Bid"
    },
    {
      "id": "edge:23403273",
      "source": "file:src/agentkit/marketplace/__init__.py",
      "target": "file:src/agentkit/marketplace/wealth.py",
      "type": "imports",
      "label": "导入 WealthTracker"
    },
    {
      "id": "edge:100fa7c7",
      "source": "file:src/agentkit/marketplace/auction.py",
      "target": "file:src/agentkit/marketplace/wealth.py",
      "type": "imports",
      "label": "导入 WealthTracker"
    },
    {
      "id": "edge:b88559df",
      "source": "file:src/agentkit/mcp/__init__.py",
      "target": "file:src/agentkit/mcp/client.py",
      "type": "imports",
      "label": "导入 MCPClient"
    },
    {
      "id": "edge:e7697582",
      "source": "file:src/agentkit/mcp/__init__.py",
      "target": "file:src/agentkit/mcp/manager.py",
      "type": "imports",
      "label": "导入 MCPManager"
    },
    {
      "id": "edge:e7fa11bd",
      "source": "file:src/agentkit/mcp/__init__.py",
      "target": "file:src/agentkit/mcp/server.py",
      "type": "imports",
      "label": "导入 MCPServer"
    },
    {
      "id": "edge:689d0d42",
      "source": "file:src/agentkit/mcp/__init__.py",
      "target": "file:src/agentkit/mcp/transport.py",
      "type": "imports",
      "label": "导入 HTTPTransport"
    },
    {
      "id": "edge:28b69fbf",
      "source": "file:src/agentkit/mcp/__init__.py",
      "target": "file:src/agentkit/mcp/transport.py",
      "type": "imports",
      "label": "导入 SSETransport"
    },
    {
      "id": "edge:dd793d43",
      "source": "file:src/agentkit/mcp/__init__.py",
      "target": "file:src/agentkit/mcp/transport.py",
      "type": "imports",
      "label": "导入 StdioTransport"
    },
    {
      "id": "edge:55acb0a4",
      "source": "file:src/agentkit/mcp/__init__.py",
      "target": "file:src/agentkit/mcp/transport.py",
      "type": "imports",
      "label": "导入 Transport"
    },
    {
      "id": "edge:9e9cc619",
      "source": "file:src/agentkit/mcp/__init__.py",
      "target": "file:src/agentkit/mcp/transport.py",
      "type": "imports",
      "label": "导入 TransportError"
    },
    {
      "id": "edge:49ff9a87",
      "source": "file:src/agentkit/mcp/client.py",
      "target": "file:src/agentkit/mcp/transport.py",
      "type": "imports",
      "label": "导入 HTTPTransport"
    },
    {
      "id": "edge:b0890d8a",
      "source": "file:src/agentkit/mcp/client.py",
      "target": "file:src/agentkit/mcp/transport.py",
      "type": "imports",
      "label": "导入 SSETransport"
    },
    {
      "id": "edge:a42a7e6a",
      "source": "file:src/agentkit/mcp/client.py",
      "target": "file:src/agentkit/mcp/transport.py",
      "type": "imports",
      "label": "导入 StdioTransport"
    },
    {
      "id": "edge:efacd532",
      "source": "file:src/agentkit/mcp/client.py",
      "target": "file:src/agentkit/mcp/transport.py",
      "type": "imports",
      "label": "导入 Transport"
    },
    {
      "id": "edge:1a4d566c",
      "source": "file:src/agentkit/mcp/client.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:9639977a",
      "source": "file:src/agentkit/mcp/manager.py",
      "target": "file:src/agentkit/mcp/client.py",
      "type": "imports",
      "label": "导入 MCPClient"
    },
    {
      "id": "edge:a36022f7",
      "source": "file:src/agentkit/mcp/manager.py",
      "target": "file:src/agentkit/mcp/transport.py",
      "type": "imports",
      "label": "导入 HTTPTransport"
    },
    {
      "id": "edge:a1d55170",
      "source": "file:src/agentkit/mcp/manager.py",
      "target": "file:src/agentkit/mcp/transport.py",
      "type": "imports",
      "label": "导入 SSETransport"
    },
    {
      "id": "edge:a4e1fd91",
      "source": "file:src/agentkit/mcp/manager.py",
      "target": "file:src/agentkit/mcp/transport.py",
      "type": "imports",
      "label": "导入 StdioTransport"
    },
    {
      "id": "edge:77e74cc4",
      "source": "file:src/agentkit/mcp/manager.py",
      "target": "file:src/agentkit/mcp/transport.py",
      "type": "imports",
      "label": "导入 Transport"
    },
    {
      "id": "edge:f5840674",
      "source": "file:src/agentkit/mcp/manager.py",
      "target": "file:src/agentkit/tools/registry.py",
      "type": "imports",
      "label": "导入 ToolRegistry"
    },
    {
      "id": "edge:760974ec",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/base.py",
      "type": "imports",
      "label": "导入 Memory"
    },
    {
      "id": "edge:5ab021d2",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/base.py",
      "type": "imports",
      "label": "导入 MemoryItem"
    },
    {
      "id": "edge:74ad6802",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/working.py",
      "type": "imports",
      "label": "导入 WorkingMemory"
    },
    {
      "id": "edge:9c1fbc25",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/episodic.py",
      "type": "imports",
      "label": "导入 EpisodicMemory"
    },
    {
      "id": "edge:9f52c3da",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/semantic.py",
      "type": "imports",
      "label": "导入 SemanticMemory"
    },
    {
      "id": "edge:91445f7f",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/http_rag.py",
      "type": "imports",
      "label": "导入 HttpRAGService"
    },
    {
      "id": "edge:a7a552b0",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/retriever.py",
      "type": "imports",
      "label": "导入 MemoryRetriever"
    },
    {
      "id": "edge:50e791fd",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/multi_source_retriever.py",
      "type": "imports",
      "label": "导入 MultiSourceRetriever"
    },
    {
      "id": "edge:e3c698ec",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/query_transformer.py",
      "type": "imports",
      "label": "导入 QueryTransformerBase"
    },
    {
      "id": "edge:96532efa",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/query_transformer.py",
      "type": "imports",
      "label": "导入 LLMQueryTransformer"
    },
    {
      "id": "edge:88008284",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/query_transformer.py",
      "type": "imports",
      "label": "导入 RuleQueryTransformer"
    },
    {
      "id": "edge:c512ca6f",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/query_transformer.py",
      "type": "imports",
      "label": "导入 NoOpQueryTransformer"
    },
    {
      "id": "edge:457b90a1",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/query_transformer.py",
      "type": "imports",
      "label": "导入 TransformedQuery"
    },
    {
      "id": "edge:ed6fa4e0",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/query_transformer.py",
      "type": "imports",
      "label": "导入 create_query_transformer"
    },
    {
      "id": "edge:7870ab69",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/profile.py",
      "type": "imports",
      "label": "导入 MemoryFile"
    },
    {
      "id": "edge:f3572b00",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/profile.py",
      "type": "imports",
      "label": "导入 MemoryStore"
    },
    {
      "id": "edge:5157b1fc",
      "source": "file:src/agentkit/memory/__init__.py",
      "target": "file:src/agentkit/memory/profile.py",
      "type": "imports",
      "label": "导入 MemorySnapshot"
    },
    {
      "id": "edge:1a8623c8",
      "source": "file:src/agentkit/memory/adapters/__init__.py",
      "target": "file:src/agentkit/memory/adapters/base.py",
      "type": "imports",
      "label": "导入 KBAdapter"
    },
    {
      "id": "edge:f9709da1",
      "source": "file:src/agentkit/memory/adapters/__init__.py",
      "target": "file:src/agentkit/memory/adapters/feishu.py",
      "type": "imports",
      "label": "导入 FeishuKBAdapter"
    },
    {
      "id": "edge:08d46018",
      "source": "file:src/agentkit/memory/adapters/__init__.py",
      "target": "file:src/agentkit/memory/adapters/confluence.py",
      "type": "imports",
      "label": "导入 ConfluenceAdapter"
    },
    {
      "id": "edge:1599beb2",
      "source": "file:src/agentkit/memory/adapters/__init__.py",
      "target": "file:src/agentkit/memory/adapters/generic_http.py",
      "type": "imports",
      "label": "导入 GenericHTTPAdapter"
    },
    {
      "id": "edge:2e8da2a5",
      "source": "file:src/agentkit/memory/adapters/base.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 Document"
    },
    {
      "id": "edge:83383603",
      "source": "file:src/agentkit/memory/adapters/base.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 QueryResult"
    },
    {
      "id": "edge:3e10cce6",
      "source": "file:src/agentkit/memory/adapters/base.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 SourceInfo"
    },
    {
      "id": "edge:ea26ab6a",
      "source": "file:src/agentkit/memory/adapters/confluence.py",
      "target": "file:src/agentkit/memory/adapters/base.py",
      "type": "imports",
      "label": "导入 KBAdapter"
    },
    {
      "id": "edge:d064bd01",
      "source": "file:src/agentkit/memory/adapters/confluence.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 Document"
    },
    {
      "id": "edge:bb533b1a",
      "source": "file:src/agentkit/memory/adapters/confluence.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 QueryResult"
    },
    {
      "id": "edge:cea96b55",
      "source": "file:src/agentkit/memory/adapters/confluence.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 SourceInfo"
    },
    {
      "id": "edge:5f809b54",
      "source": "file:src/agentkit/memory/adapters/confluence.py",
      "target": "file:src/agentkit/utils/security.py",
      "type": "imports",
      "label": "导入 is_safe_url"
    },
    {
      "id": "edge:1c48434b",
      "source": "file:src/agentkit/memory/adapters/feishu.py",
      "target": "file:src/agentkit/memory/adapters/base.py",
      "type": "imports",
      "label": "导入 KBAdapter"
    },
    {
      "id": "edge:7c102e29",
      "source": "file:src/agentkit/memory/adapters/feishu.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 Document"
    },
    {
      "id": "edge:d26553b3",
      "source": "file:src/agentkit/memory/adapters/feishu.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 QueryResult"
    },
    {
      "id": "edge:98e8b9c7",
      "source": "file:src/agentkit/memory/adapters/feishu.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 SourceInfo"
    },
    {
      "id": "edge:f21d928e",
      "source": "file:src/agentkit/memory/adapters/feishu.py",
      "target": "file:src/agentkit/utils/security.py",
      "type": "imports",
      "label": "导入 is_safe_url"
    },
    {
      "id": "edge:32d371bb",
      "source": "file:src/agentkit/memory/adapters/generic_http.py",
      "target": "file:src/agentkit/memory/adapters/base.py",
      "type": "imports",
      "label": "导入 KBAdapter"
    },
    {
      "id": "edge:ed3fa32e",
      "source": "file:src/agentkit/memory/adapters/generic_http.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 Document"
    },
    {
      "id": "edge:45077727",
      "source": "file:src/agentkit/memory/adapters/generic_http.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 QueryResult"
    },
    {
      "id": "edge:294331b2",
      "source": "file:src/agentkit/memory/adapters/generic_http.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 SourceInfo"
    },
    {
      "id": "edge:4e7c7623",
      "source": "file:src/agentkit/memory/adapters/generic_http.py",
      "target": "file:src/agentkit/utils/security.py",
      "type": "imports",
      "label": "导入 is_safe_url"
    },
    {
      "id": "edge:6f4149bb",
      "source": "file:src/agentkit/memory/contextual_retrieval.py",
      "target": "file:src/agentkit/memory/embedder.py",
      "type": "imports",
      "label": "导入 EmbeddingCache"
    },
    {
      "id": "edge:ca7f9a92",
      "source": "file:src/agentkit/memory/episodic.py",
      "target": "file:src/agentkit/memory/base.py",
      "type": "imports",
      "label": "导入 Memory"
    },
    {
      "id": "edge:f49d0564",
      "source": "file:src/agentkit/memory/episodic.py",
      "target": "file:src/agentkit/memory/base.py",
      "type": "imports",
      "label": "导入 MemoryItem"
    },
    {
      "id": "edge:d801c2cf",
      "source": "file:src/agentkit/memory/episodic.py",
      "target": "file:src/agentkit/memory/embedder.py",
      "type": "imports",
      "label": "导入 Embedder"
    },
    {
      "id": "edge:0fd40dcf",
      "source": "file:src/agentkit/memory/episodic.py",
      "target": "file:src/agentkit/utils/vector_math.py",
      "type": "imports",
      "label": "导入 compute_cosine_similarity"
    },
    {
      "id": "edge:b17e81dd",
      "source": "file:src/agentkit/memory/http_rag.py",
      "target": "file:src/agentkit/memory/contextual_retrieval.py",
      "type": "imports",
      "label": "导入 ContextualChunker"
    },
    {
      "id": "edge:c856aa9a",
      "source": "file:src/agentkit/memory/local_rag.py",
      "target": "file:src/agentkit/memory/chunking.py",
      "type": "imports",
      "label": "导入 Chunk"
    },
    {
      "id": "edge:3b657f6d",
      "source": "file:src/agentkit/memory/local_rag.py",
      "target": "file:src/agentkit/memory/chunking.py",
      "type": "imports",
      "label": "导入 StructuralChunker"
    },
    {
      "id": "edge:9eededfc",
      "source": "file:src/agentkit/memory/local_rag.py",
      "target": "file:src/agentkit/memory/chunking.py",
      "type": "imports",
      "label": "导入 TextChunker"
    },
    {
      "id": "edge:abf278a1",
      "source": "file:src/agentkit/memory/local_rag.py",
      "target": "file:src/agentkit/memory/document_loader.py",
      "type": "imports",
      "label": "导入 Document"
    },
    {
      "id": "edge:53e13154",
      "source": "file:src/agentkit/memory/local_rag.py",
      "target": "file:src/agentkit/memory/embedder.py",
      "type": "imports",
      "label": "导入 Embedder"
    },
    {
      "id": "edge:e5e8a619",
      "source": "file:src/agentkit/memory/local_rag.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 Document"
    },
    {
      "id": "edge:da44c502",
      "source": "file:src/agentkit/memory/local_rag.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 KnowledgeBase"
    },
    {
      "id": "edge:0bf3b2c2",
      "source": "file:src/agentkit/memory/local_rag.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 QueryResult"
    },
    {
      "id": "edge:cbcdd44a",
      "source": "file:src/agentkit/memory/local_rag.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 SourceInfo"
    },
    {
      "id": "edge:94cd2f88",
      "source": "file:src/agentkit/memory/local_rag.py",
      "target": "file:src/agentkit/utils/vector_math.py",
      "type": "imports",
      "label": "导入 compute_cosine_similarity"
    },
    {
      "id": "edge:5c43d171",
      "source": "file:src/agentkit/memory/multi_source_retriever.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 KnowledgeBase"
    },
    {
      "id": "edge:06897382",
      "source": "file:src/agentkit/memory/multi_source_retriever.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 QueryResult"
    },
    {
      "id": "edge:6783c624",
      "source": "file:src/agentkit/memory/multi_source_retriever.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 SourceInfo"
    },
    {
      "id": "edge:87117dec",
      "source": "file:src/agentkit/memory/rag_loop.py",
      "target": "file:src/agentkit/memory/base.py",
      "type": "imports",
      "label": "导入 MemoryItem"
    },
    {
      "id": "edge:9f181172",
      "source": "file:src/agentkit/memory/rag_loop.py",
      "target": "file:src/agentkit/memory/query_transformer.py",
      "type": "imports",
      "label": "导入 QueryTransformerBase"
    },
    {
      "id": "edge:d2a5e364",
      "source": "file:src/agentkit/memory/rag_loop.py",
      "target": "file:src/agentkit/memory/query_transformer.py",
      "type": "imports",
      "label": "导入 NoOpQueryTransformer"
    },
    {
      "id": "edge:1a78fb53",
      "source": "file:src/agentkit/memory/rag_loop.py",
      "target": "file:src/agentkit/memory/relevance_scorer.py",
      "type": "imports",
      "label": "导入 RelevanceScorer"
    },
    {
      "id": "edge:0a4a8bb1",
      "source": "file:src/agentkit/memory/rag_loop.py",
      "target": "file:src/agentkit/memory/relevance_scorer.py",
      "type": "imports",
      "label": "导入 RelevanceVerdict"
    },
    {
      "id": "edge:5afee05f",
      "source": "file:src/agentkit/memory/rag_loop.py",
      "target": "file:src/agentkit/memory/relevance_scorer.py",
      "type": "imports",
      "label": "导入 RetrievalEvaluation"
    },
    {
      "id": "edge:21ad9495",
      "source": "file:src/agentkit/memory/relevance_scorer.py",
      "target": "file:src/agentkit/memory/base.py",
      "type": "imports",
      "label": "导入 MemoryItem"
    },
    {
      "id": "edge:7a89cb1c",
      "source": "file:src/agentkit/memory/retriever.py",
      "target": "file:src/agentkit/memory/base.py",
      "type": "imports",
      "label": "导入 Memory"
    },
    {
      "id": "edge:f5239500",
      "source": "file:src/agentkit/memory/retriever.py",
      "target": "file:src/agentkit/memory/base.py",
      "type": "imports",
      "label": "导入 MemoryItem"
    },
    {
      "id": "edge:288a5907",
      "source": "file:src/agentkit/memory/retriever.py",
      "target": "file:src/agentkit/memory/working.py",
      "type": "imports",
      "label": "导入 WorkingMemory"
    },
    {
      "id": "edge:946b38dc",
      "source": "file:src/agentkit/memory/retriever.py",
      "target": "file:src/agentkit/memory/episodic.py",
      "type": "imports",
      "label": "导入 EpisodicMemory"
    },
    {
      "id": "edge:5103114c",
      "source": "file:src/agentkit/memory/retriever.py",
      "target": "file:src/agentkit/memory/semantic.py",
      "type": "imports",
      "label": "导入 SemanticMemory"
    },
    {
      "id": "edge:c4a65cc2",
      "source": "file:src/agentkit/memory/retriever.py",
      "target": "file:src/agentkit/memory/query_transformer.py",
      "type": "imports",
      "label": "导入 QueryTransformerBase"
    },
    {
      "id": "edge:d401e1b1",
      "source": "file:src/agentkit/memory/retriever.py",
      "target": "file:src/agentkit/memory/rag_loop.py",
      "type": "imports",
      "label": "导入 RAGSelfCorrectionLoop"
    },
    {
      "id": "edge:c3af740b",
      "source": "file:src/agentkit/memory/retriever.py",
      "target": "file:src/agentkit/memory/relevance_scorer.py",
      "type": "imports",
      "label": "导入 RelevanceScorer"
    },
    {
      "id": "edge:626ffcd6",
      "source": "file:src/agentkit/memory/retriever.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 KnowledgeBase"
    },
    {
      "id": "edge:0e726cef",
      "source": "file:src/agentkit/memory/retriever.py",
      "target": "file:src/agentkit/memory/knowledge_base.py",
      "type": "imports",
      "label": "导入 QueryResult"
    },
    {
      "id": "edge:69b055aa",
      "source": "file:src/agentkit/memory/retriever.py",
      "target": "file:src/agentkit/memory/multi_source_retriever.py",
      "type": "imports",
      "label": "导入 MultiSourceRetriever"
    },
    {
      "id": "edge:5fe676b4",
      "source": "file:src/agentkit/memory/retriever.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:89b629c2",
      "source": "file:src/agentkit/memory/semantic.py",
      "target": "file:src/agentkit/memory/base.py",
      "type": "imports",
      "label": "导入 Memory"
    },
    {
      "id": "edge:47352c28",
      "source": "file:src/agentkit/memory/semantic.py",
      "target": "file:src/agentkit/memory/base.py",
      "type": "imports",
      "label": "导入 MemoryItem"
    },
    {
      "id": "edge:7ca638cf",
      "source": "file:src/agentkit/memory/working.py",
      "target": "file:src/agentkit/memory/base.py",
      "type": "imports",
      "label": "导入 Memory"
    },
    {
      "id": "edge:223bb276",
      "source": "file:src/agentkit/memory/working.py",
      "target": "file:src/agentkit/memory/base.py",
      "type": "imports",
      "label": "导入 MemoryItem"
    },
    {
      "id": "edge:bb4ff796",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 Pipeline"
    },
    {
      "id": "edge:a913d922",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 PipelineStage"
    },
    {
      "id": "edge:776e6106",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 StageStatus"
    },
    {
      "id": "edge:5919a000",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 AdaptiveConfig"
    },
    {
      "id": "edge:66f3a239",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 ReflectionReport"
    },
    {
      "id": "edge:c153df03",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "type": "imports",
      "label": "导入 PipelineEngine"
    },
    {
      "id": "edge:cb1bf686",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/pipeline_loader.py",
      "type": "imports",
      "label": "导入 PipelineLoader"
    },
    {
      "id": "edge:7be03ca2",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/handoff.py",
      "type": "imports",
      "label": "导入 HandoffManager"
    },
    {
      "id": "edge:97732594",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/dynamic_pipeline.py",
      "type": "imports",
      "label": "导入 DynamicPipeline"
    },
    {
      "id": "edge:d2424f52",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/pipeline_state.py",
      "type": "imports",
      "label": "导入 PipelineStateMemory"
    },
    {
      "id": "edge:f23df95e",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/pipeline_state.py",
      "type": "imports",
      "label": "导入 PipelineStateRedis"
    },
    {
      "id": "edge:47b5b317",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/pipeline_state.py",
      "type": "imports",
      "label": "导入 PipelineStatePG"
    },
    {
      "id": "edge:d581dde5",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/pipeline_state.py",
      "type": "imports",
      "label": "导入 PipelineStateManager"
    },
    {
      "id": "edge:1a995fc3",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/retry.py",
      "type": "imports",
      "label": "导入 StepRetryPolicy"
    },
    {
      "id": "edge:646d8cf5",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/retry.py",
      "type": "imports",
      "label": "导入 execute_with_retry"
    },
    {
      "id": "edge:de74afab",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/compensation.py",
      "type": "imports",
      "label": "导入 CompletedStep"
    },
    {
      "id": "edge:2106f7a9",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/compensation.py",
      "type": "imports",
      "label": "导入 CompensationResult"
    },
    {
      "id": "edge:4ea8bbae",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/compensation.py",
      "type": "imports",
      "label": "导入 SagaOrchestrator"
    },
    {
      "id": "edge:9ae5feb0",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/reflection.py",
      "type": "imports",
      "label": "导入 PipelineReflector"
    },
    {
      "id": "edge:db8d592e",
      "source": "file:src/agentkit/orchestrator/__init__.py",
      "target": "file:src/agentkit/orchestrator/reflection.py",
      "type": "imports",
      "label": "导入 PipelineReplanner"
    },
    {
      "id": "edge:46222879",
      "source": "file:src/agentkit/orchestrator/dynamic_pipeline.py",
      "target": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "type": "imports",
      "label": "导入 PipelineEngine"
    },
    {
      "id": "edge:62489e32",
      "source": "file:src/agentkit/orchestrator/dynamic_pipeline.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 Pipeline"
    },
    {
      "id": "edge:76566fa5",
      "source": "file:src/agentkit/orchestrator/dynamic_pipeline.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 PipelineResult"
    },
    {
      "id": "edge:b57c8146",
      "source": "file:src/agentkit/orchestrator/dynamic_pipeline.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 StageStatus"
    },
    {
      "id": "edge:d8b6a9ef",
      "source": "file:src/agentkit/orchestrator/handoff.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 HandoffMessage"
    },
    {
      "id": "edge:da80991a",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/orchestrator/compensation.py",
      "type": "imports",
      "label": "导入 SagaOrchestrator"
    },
    {
      "id": "edge:0fef7552",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 AdversarialState"
    },
    {
      "id": "edge:888d3925",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 AdaptiveConfig"
    },
    {
      "id": "edge:ee5b0d0e",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 Pipeline"
    },
    {
      "id": "edge:b86e193f",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 PipelineResult"
    },
    {
      "id": "edge:0e4d2202",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 PipelineStage"
    },
    {
      "id": "edge:d8f10d25",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 ReflectionReport"
    },
    {
      "id": "edge:d837937f",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 ReviewFeedback"
    },
    {
      "id": "edge:391e1ebb",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 ReviewIssue"
    },
    {
      "id": "edge:41a76afb",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 StageResult"
    },
    {
      "id": "edge:d04f45ae",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 StageStatus"
    },
    {
      "id": "edge:741849b6",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/orchestrator/reflection.py",
      "type": "imports",
      "label": "导入 PipelineReflector"
    },
    {
      "id": "edge:7c3b459a",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/orchestrator/reflection.py",
      "type": "imports",
      "label": "导入 PipelineReplanner"
    },
    {
      "id": "edge:5e7bf341",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/orchestrator/retry.py",
      "type": "imports",
      "label": "导入 StepRetryPolicy"
    },
    {
      "id": "edge:6078d7ce",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/orchestrator/retry.py",
      "type": "imports",
      "label": "导入 execute_with_retry"
    },
    {
      "id": "edge:699d80f6",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:d9fe8888",
      "source": "file:src/agentkit/orchestrator/pipeline_engine.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:32b1d4ec",
      "source": "file:src/agentkit/orchestrator/pipeline_loader.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 Pipeline"
    },
    {
      "id": "edge:c1aed373",
      "source": "file:src/agentkit/orchestrator/pipeline_loader.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 PipelineStage"
    },
    {
      "id": "edge:22d720f3",
      "source": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "target": "file:src/agentkit/orchestrator/retry.py",
      "type": "imports",
      "label": "导入 StepRetryPolicy"
    },
    {
      "id": "edge:ae943402",
      "source": "file:src/agentkit/orchestrator/pipeline_state.py",
      "target": "file:src/agentkit/orchestrator/pipeline_models.py",
      "type": "imports",
      "label": "导入 PipelineExecutionModel"
    },
    {
      "id": "edge:585491e2",
      "source": "file:src/agentkit/orchestrator/pipeline_state.py",
      "target": "file:src/agentkit/orchestrator/pipeline_models.py",
      "type": "imports",
      "label": "导入 PipelineStepHistoryModel"
    },
    {
      "id": "edge:606c5a5d",
      "source": "file:src/agentkit/orchestrator/reflection.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 Pipeline"
    },
    {
      "id": "edge:fce7e208",
      "source": "file:src/agentkit/orchestrator/reflection.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 PipelineResult"
    },
    {
      "id": "edge:38f8bdad",
      "source": "file:src/agentkit/orchestrator/reflection.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 PipelineStage"
    },
    {
      "id": "edge:42dc6bde",
      "source": "file:src/agentkit/orchestrator/reflection.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 ReflectionReport"
    },
    {
      "id": "edge:6c1f06a8",
      "source": "file:src/agentkit/orchestrator/reflection.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 StageResult"
    },
    {
      "id": "edge:165128f6",
      "source": "file:src/agentkit/orchestrator/reflection.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 StageStatus"
    },
    {
      "id": "edge:b1118c65",
      "source": "file:src/agentkit/orchestrator/reflection.py",
      "target": "file:src/agentkit/orchestrator/retry.py",
      "type": "imports",
      "label": "导入 StepRetryPolicy"
    },
    {
      "id": "edge:e4f6ffae",
      "source": "file:src/agentkit/orchestrator/reflection.py",
      "target": "file:src/agentkit/orchestrator/retry.py",
      "type": "imports",
      "label": "导入 StepRetryPolicy"
    },
    {
      "id": "edge:a99e8b40",
      "source": "file:src/agentkit/orchestrator/workflow_schema.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 Pipeline"
    },
    {
      "id": "edge:abbc2a4d",
      "source": "file:src/agentkit/orchestrator/workflow_schema.py",
      "target": "file:src/agentkit/orchestrator/pipeline_schema.py",
      "type": "imports",
      "label": "导入 PipelineStage"
    },
    {
      "id": "edge:8569a8f5",
      "source": "file:src/agentkit/org/__init__.py",
      "target": "file:src/agentkit/org/context.py",
      "type": "imports",
      "label": "导入 AgentProfile"
    },
    {
      "id": "edge:18db082e",
      "source": "file:src/agentkit/org/__init__.py",
      "target": "file:src/agentkit/org/context.py",
      "type": "imports",
      "label": "导入 OrganizationContext"
    },
    {
      "id": "edge:54a39142",
      "source": "file:src/agentkit/org/__init__.py",
      "target": "file:src/agentkit/org/discovery.py",
      "type": "imports",
      "label": "导入 AgentDiscovery"
    },
    {
      "id": "edge:e0ac489e",
      "source": "file:src/agentkit/org/discovery.py",
      "target": "file:src/agentkit/org/context.py",
      "type": "imports",
      "label": "导入 AgentProfile"
    },
    {
      "id": "edge:0d764570",
      "source": "file:src/agentkit/org/discovery.py",
      "target": "file:src/agentkit/org/context.py",
      "type": "imports",
      "label": "导入 OrganizationContext"
    },
    {
      "id": "edge:4452057d",
      "source": "file:src/agentkit/prompts/__init__.py",
      "target": "file:src/agentkit/prompts/template.py",
      "type": "imports",
      "label": "导入 PromptTemplate"
    },
    {
      "id": "edge:89b17e93",
      "source": "file:src/agentkit/prompts/__init__.py",
      "target": "file:src/agentkit/prompts/section.py",
      "type": "imports",
      "label": "导入 PromptSection"
    },
    {
      "id": "edge:fd7f7a20",
      "source": "file:src/agentkit/prompts/template.py",
      "target": "file:src/agentkit/prompts/section.py",
      "type": "imports",
      "label": "导入 PromptSection"
    },
    {
      "id": "edge:9d1eb8ec",
      "source": "file:src/agentkit/quality/__init__.py",
      "target": "file:src/agentkit/quality/alignment.py",
      "type": "imports",
      "label": "导入 AlignmentCheckResult"
    },
    {
      "id": "edge:9fd63bcb",
      "source": "file:src/agentkit/quality/__init__.py",
      "target": "file:src/agentkit/quality/alignment.py",
      "type": "imports",
      "label": "导入 AlignmentConfig"
    },
    {
      "id": "edge:8a39ec20",
      "source": "file:src/agentkit/quality/__init__.py",
      "target": "file:src/agentkit/quality/alignment.py",
      "type": "imports",
      "label": "导入 AlignmentGuard"
    },
    {
      "id": "edge:f240fa83",
      "source": "file:src/agentkit/quality/__init__.py",
      "target": "file:src/agentkit/quality/alignment.py",
      "type": "imports",
      "label": "导入 CascadeAlert"
    },
    {
      "id": "edge:27d7969a",
      "source": "file:src/agentkit/quality/__init__.py",
      "target": "file:src/agentkit/quality/alignment.py",
      "type": "imports",
      "label": "导入 ConstraintInjector"
    },
    {
      "id": "edge:8e1b69f7",
      "source": "file:src/agentkit/quality/__init__.py",
      "target": "file:src/agentkit/quality/cascade_detector.py",
      "type": "imports",
      "label": "导入 CascadeDetector"
    },
    {
      "id": "edge:1d8d0054",
      "source": "file:src/agentkit/quality/__init__.py",
      "target": "file:src/agentkit/quality/gate.py",
      "type": "imports",
      "label": "导入 QualityCheck"
    },
    {
      "id": "edge:8e809eb9",
      "source": "file:src/agentkit/quality/__init__.py",
      "target": "file:src/agentkit/quality/gate.py",
      "type": "imports",
      "label": "导入 QualityGate"
    },
    {
      "id": "edge:3463e900",
      "source": "file:src/agentkit/quality/__init__.py",
      "target": "file:src/agentkit/quality/gate.py",
      "type": "imports",
      "label": "导入 QualityResult"
    },
    {
      "id": "edge:3276c816",
      "source": "file:src/agentkit/quality/__init__.py",
      "target": "file:src/agentkit/quality/output.py",
      "type": "imports",
      "label": "导入 OutputMetadata"
    },
    {
      "id": "edge:8683d888",
      "source": "file:src/agentkit/quality/__init__.py",
      "target": "file:src/agentkit/quality/output.py",
      "type": "imports",
      "label": "导入 OutputStandardizer"
    },
    {
      "id": "edge:816c9302",
      "source": "file:src/agentkit/quality/__init__.py",
      "target": "file:src/agentkit/quality/output.py",
      "type": "imports",
      "label": "导入 StandardOutput"
    },
    {
      "id": "edge:98e46c69",
      "source": "file:src/agentkit/quality/alignment.py",
      "target": "file:src/agentkit/telemetry/tracer.py",
      "type": "imports",
      "label": "导入 get_tracer"
    },
    {
      "id": "edge:1402bc5b",
      "source": "file:src/agentkit/quality/cascade_detector.py",
      "target": "file:src/agentkit/quality/cascade_state_store.py",
      "type": "imports",
      "label": "导入 CascadeStateStore"
    },
    {
      "id": "edge:78c4ebf3",
      "source": "file:src/agentkit/quality/cascade_detector.py",
      "target": "file:src/agentkit/quality/cascade_state_store.py",
      "type": "imports",
      "label": "导入 InMemoryCascadeStateStore"
    },
    {
      "id": "edge:c6b1e226",
      "source": "file:src/agentkit/quality/gate.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 Skill"
    },
    {
      "id": "edge:3bbb2203",
      "source": "file:src/agentkit/quality/output.py",
      "target": "file:src/agentkit/quality/gate.py",
      "type": "imports",
      "label": "导入 QualityResult"
    },
    {
      "id": "edge:a4839d84",
      "source": "file:src/agentkit/quality/output.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 Skill"
    },
    {
      "id": "edge:f210e47b",
      "source": "file:src/agentkit/router/__init__.py",
      "target": "file:src/agentkit/router/intent.py",
      "type": "imports",
      "label": "导入 IntentRouter"
    },
    {
      "id": "edge:82ecce7f",
      "source": "file:src/agentkit/router/__init__.py",
      "target": "file:src/agentkit/router/intent.py",
      "type": "imports",
      "label": "导入 RoutingResult"
    },
    {
      "id": "edge:680c01c5",
      "source": "file:src/agentkit/router/intent.py",
      "target": "file:src/agentkit/llm/gateway.py",
      "type": "imports",
      "label": "导入 LLMGateway"
    },
    {
      "id": "edge:571d9704",
      "source": "file:src/agentkit/router/intent.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 Skill"
    },
    {
      "id": "edge:c9d5beab",
      "source": "file:src/agentkit/server/routes/__init__.py",
      "target": "file:src/agentkit/server/routes/__init__.py",
      "type": "imports",
      "label": "导入 agents"
    },
    {
      "id": "edge:9166ac0f",
      "source": "file:src/agentkit/server/routes/__init__.py",
      "target": "file:src/agentkit/server/routes/__init__.py",
      "type": "imports",
      "label": "导入 tasks"
    },
    {
      "id": "edge:6560157d",
      "source": "file:src/agentkit/server/routes/__init__.py",
      "target": "file:src/agentkit/server/routes/__init__.py",
      "type": "imports",
      "label": "导入 skills"
    },
    {
      "id": "edge:ecdc1a1d",
      "source": "file:src/agentkit/server/routes/__init__.py",
      "target": "file:src/agentkit/server/routes/__init__.py",
      "type": "imports",
      "label": "导入 llm"
    },
    {
      "id": "edge:9c948ac7",
      "source": "file:src/agentkit/server/routes/__init__.py",
      "target": "file:src/agentkit/server/routes/__init__.py",
      "type": "imports",
      "label": "导入 health"
    },
    {
      "id": "edge:3b36770c",
      "source": "file:src/agentkit/server/routes/__init__.py",
      "target": "file:src/agentkit/server/routes/__init__.py",
      "type": "imports",
      "label": "导入 metrics"
    },
    {
      "id": "edge:6194c7a5",
      "source": "file:src/agentkit/server/routes/__init__.py",
      "target": "file:src/agentkit/server/routes/__init__.py",
      "type": "imports",
      "label": "导入 ws"
    },
    {
      "id": "edge:c9c4470d",
      "source": "file:src/agentkit/server/routes/__init__.py",
      "target": "file:src/agentkit/server/routes/__init__.py",
      "type": "imports",
      "label": "导入 evolution"
    },
    {
      "id": "edge:10cd0e6f",
      "source": "file:src/agentkit/server/routes/__init__.py",
      "target": "file:src/agentkit/server/routes/__init__.py",
      "type": "imports",
      "label": "导入 memory"
    },
    {
      "id": "edge:203adfdf",
      "source": "file:src/agentkit/server/routes/__init__.py",
      "target": "file:src/agentkit/server/routes/__init__.py",
      "type": "imports",
      "label": "导入 portal"
    },
    {
      "id": "edge:1eeb17ba",
      "source": "file:src/agentkit/server/routes/__init__.py",
      "target": "file:src/agentkit/server/routes/__init__.py",
      "type": "imports",
      "label": "导入 evolution_dashboard"
    },
    {
      "id": "edge:05a5867b",
      "source": "file:src/agentkit/server/routes/__init__.py",
      "target": "file:src/agentkit/server/routes/__init__.py",
      "type": "imports",
      "label": "导入 kb_management"
    },
    {
      "id": "edge:2810a69b",
      "source": "file:src/agentkit/server/routes/__init__.py",
      "target": "file:src/agentkit/server/routes/__init__.py",
      "type": "imports",
      "label": "导入 skill_management"
    },
    {
      "id": "edge:0d306580",
      "source": "file:src/agentkit/server/routes/__init__.py",
      "target": "file:src/agentkit/server/routes/__init__.py",
      "type": "imports",
      "label": "导入 workflows"
    },
    {
      "id": "edge:62607a8a",
      "source": "file:src/agentkit/server/routes/__init__.py",
      "target": "file:src/agentkit/server/routes/__init__.py",
      "type": "imports",
      "label": "导入 terminal"
    },
    {
      "id": "edge:dae8c731",
      "source": "file:src/agentkit/server/routes/agents.py",
      "target": "file:src/agentkit/core/config_driven.py",
      "type": "imports",
      "label": "导入 AgentConfig"
    },
    {
      "id": "edge:44d4b4c7",
      "source": "file:src/agentkit/server/routes/agents.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 SkillConfig"
    },
    {
      "id": "edge:62fbad94",
      "source": "file:src/agentkit/server/routes/evolution.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 EvolutionEvent"
    },
    {
      "id": "edge:f9bcdcb3",
      "source": "file:src/agentkit/server/routes/evolution.py",
      "target": "file:src/agentkit/evolution/models.py",
      "type": "imports",
      "label": "导入 ABTestResultModel"
    },
    {
      "id": "edge:79ac0dcd",
      "source": "file:src/agentkit/server/routes/kb_management.py",
      "target": "file:src/agentkit/memory/document_loader.py",
      "type": "imports",
      "label": "导入 DocumentLoader"
    },
    {
      "id": "edge:c15e91e2",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:eb292f52",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActEngine"
    },
    {
      "id": "edge:8c887346",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "file:src/agentkit/router/intent.py",
      "type": "imports",
      "label": "导入 IntentRouter"
    },
    {
      "id": "edge:fc27e222",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "type": "imports",
      "label": "导入 _experiences"
    },
    {
      "id": "edge:1e73fa02",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "type": "imports",
      "label": "导入 DashboardExperience"
    },
    {
      "id": "edge:aed6ff73",
      "source": "file:src/agentkit/server/routes/portal.py",
      "target": "file:src/agentkit/server/routes/evolution_dashboard.py",
      "type": "imports",
      "label": "导入 _broadcast_event"
    },
    {
      "id": "edge:0a07cfcb",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 Skill"
    },
    {
      "id": "edge:dc6e8532",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 SkillConfig"
    },
    {
      "id": "edge:1d6e3757",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "file:src/agentkit/skills/pipeline.py",
      "type": "imports",
      "label": "导入 SkillPipeline"
    },
    {
      "id": "edge:db20bb5c",
      "source": "file:src/agentkit/server/routes/skills.py",
      "target": "file:src/agentkit/skills/loader.py",
      "type": "imports",
      "label": "导入 SkillLoader"
    },
    {
      "id": "edge:058160ba",
      "source": "file:src/agentkit/server/routes/tasks.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:d3c0a74c",
      "source": "file:src/agentkit/server/routes/tasks.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskStatus"
    },
    {
      "id": "edge:ba7d6263",
      "source": "file:src/agentkit/server/routes/tasks.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 LLMProviderError"
    },
    {
      "id": "edge:6489638e",
      "source": "file:src/agentkit/server/routes/tasks.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActEngine"
    },
    {
      "id": "edge:a1387c22",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "file:src/agentkit/tools/pty_session.py",
      "type": "imports",
      "label": "导入 PTYSession"
    },
    {
      "id": "edge:eb43467f",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "file:src/agentkit/tools/shell.py",
      "type": "imports",
      "label": "导入 _SAFE_COMMAND_PREFIXES"
    },
    {
      "id": "edge:272d7b7d",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "file:src/agentkit/tools/shell.py",
      "type": "imports",
      "label": "导入 _DANGEROUS_BINARIES"
    },
    {
      "id": "edge:1286ef91",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "file:src/agentkit/tools/shell.py",
      "type": "imports",
      "label": "导入 _DANGEROUS_BINARY_FLAGS"
    },
    {
      "id": "edge:468a8230",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "file:src/agentkit/tools/shell.py",
      "type": "imports",
      "label": "导入 _DANGEROUS_ARG_PATTERNS"
    },
    {
      "id": "edge:db1eec57",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "file:src/agentkit/tools/shell.py",
      "type": "imports",
      "label": "导入 _SHELL_PIPE_OPERATORS"
    },
    {
      "id": "edge:a9915ac0",
      "source": "file:src/agentkit/server/routes/terminal.py",
      "target": "file:src/agentkit/tools/shell.py",
      "type": "imports",
      "label": "导入 _SHELL_CHAIN_OPERATORS"
    },
    {
      "id": "edge:6c805055",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "file:src/agentkit/orchestrator/workflow_schema.py",
      "type": "imports",
      "label": "导入 ApproveRequest"
    },
    {
      "id": "edge:4b9f3f80",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "file:src/agentkit/orchestrator/workflow_schema.py",
      "type": "imports",
      "label": "导入 CreateWorkflowRequest"
    },
    {
      "id": "edge:3b035d38",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "file:src/agentkit/orchestrator/workflow_schema.py",
      "type": "imports",
      "label": "导入 ExecuteWorkflowRequest"
    },
    {
      "id": "edge:f029a758",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "file:src/agentkit/orchestrator/workflow_schema.py",
      "type": "imports",
      "label": "导入 WorkflowDefinition"
    },
    {
      "id": "edge:206bad03",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "file:src/agentkit/orchestrator/workflow_schema.py",
      "type": "imports",
      "label": "导入 WorkflowExecution"
    },
    {
      "id": "edge:76223fc7",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "file:src/agentkit/orchestrator/workflow_schema.py",
      "type": "imports",
      "label": "导入 WorkflowStage"
    },
    {
      "id": "edge:1015c0a9",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "file:src/agentkit/orchestrator/workflow_schema.py",
      "type": "imports",
      "label": "导入 WorkflowSummary"
    },
    {
      "id": "edge:b9e36af0",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "file:src/agentkit/core/config_driven.py",
      "type": "imports",
      "label": "导入 ConfigDrivenAgent"
    },
    {
      "id": "edge:a6f29864",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:1d8cd1c9",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "file:src/agentkit/core/config_driven.py",
      "type": "imports",
      "label": "导入 ConfigDrivenAgent"
    },
    {
      "id": "edge:2abb0848",
      "source": "file:src/agentkit/server/routes/workflows.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:3526c571",
      "source": "file:src/agentkit/server/routes/ws.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 CancellationToken"
    },
    {
      "id": "edge:3a79a907",
      "source": "file:src/agentkit/server/routes/ws.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "label": "导入 ReActEngine"
    },
    {
      "id": "edge:d2747d2e",
      "source": "file:src/agentkit/server/runner.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:413fc715",
      "source": "file:src/agentkit/server/runner.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskStatus"
    },
    {
      "id": "edge:2d8f5082",
      "source": "file:src/agentkit/server/runner.py",
      "target": "file:src/agentkit/server/task_store.py",
      "type": "imports",
      "label": "导入 TaskStore"
    },
    {
      "id": "edge:618c12d4",
      "source": "file:src/agentkit/server/task_store.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskStatus"
    },
    {
      "id": "edge:fb3eae8c",
      "source": "file:src/agentkit/session/__init__.py",
      "target": "file:src/agentkit/session/models.py",
      "type": "imports",
      "label": "导入 Message"
    },
    {
      "id": "edge:7de745e8",
      "source": "file:src/agentkit/session/__init__.py",
      "target": "file:src/agentkit/session/models.py",
      "type": "imports",
      "label": "导入 MessageRole"
    },
    {
      "id": "edge:8281116c",
      "source": "file:src/agentkit/session/__init__.py",
      "target": "file:src/agentkit/session/models.py",
      "type": "imports",
      "label": "导入 Session"
    },
    {
      "id": "edge:43232ef3",
      "source": "file:src/agentkit/session/__init__.py",
      "target": "file:src/agentkit/session/models.py",
      "type": "imports",
      "label": "导入 SessionStatus"
    },
    {
      "id": "edge:a08c1bd6",
      "source": "file:src/agentkit/session/__init__.py",
      "target": "file:src/agentkit/session/manager.py",
      "type": "imports",
      "label": "导入 SessionManager"
    },
    {
      "id": "edge:db4b77e7",
      "source": "file:src/agentkit/session/__init__.py",
      "target": "file:src/agentkit/session/store.py",
      "type": "imports",
      "label": "导入 InMemorySessionStore"
    },
    {
      "id": "edge:2613a2d3",
      "source": "file:src/agentkit/session/__init__.py",
      "target": "file:src/agentkit/session/store.py",
      "type": "imports",
      "label": "导入 RedisSessionStore"
    },
    {
      "id": "edge:c5e5f94e",
      "source": "file:src/agentkit/session/__init__.py",
      "target": "file:src/agentkit/session/store.py",
      "type": "imports",
      "label": "导入 create_session_store"
    },
    {
      "id": "edge:269d95b2",
      "source": "file:src/agentkit/session/manager.py",
      "target": "file:src/agentkit/session/models.py",
      "type": "imports",
      "label": "导入 Message"
    },
    {
      "id": "edge:7beb4cf5",
      "source": "file:src/agentkit/session/manager.py",
      "target": "file:src/agentkit/session/models.py",
      "type": "imports",
      "label": "导入 MessageRole"
    },
    {
      "id": "edge:fc1605cf",
      "source": "file:src/agentkit/session/manager.py",
      "target": "file:src/agentkit/session/models.py",
      "type": "imports",
      "label": "导入 Session"
    },
    {
      "id": "edge:99301f18",
      "source": "file:src/agentkit/session/manager.py",
      "target": "file:src/agentkit/session/models.py",
      "type": "imports",
      "label": "导入 SessionStatus"
    },
    {
      "id": "edge:62d07db2",
      "source": "file:src/agentkit/session/manager.py",
      "target": "file:src/agentkit/session/store.py",
      "type": "imports",
      "label": "导入 InMemorySessionStore"
    },
    {
      "id": "edge:625950f5",
      "source": "file:src/agentkit/session/manager.py",
      "target": "file:src/agentkit/session/store.py",
      "type": "imports",
      "label": "导入 SessionStore"
    },
    {
      "id": "edge:7369fee0",
      "source": "file:src/agentkit/session/store.py",
      "target": "file:src/agentkit/session/models.py",
      "type": "imports",
      "label": "导入 Message"
    },
    {
      "id": "edge:bdacc242",
      "source": "file:src/agentkit/session/store.py",
      "target": "file:src/agentkit/session/models.py",
      "type": "imports",
      "label": "导入 Session"
    },
    {
      "id": "edge:ed15257c",
      "source": "file:src/agentkit/session/store.py",
      "target": "file:src/agentkit/session/models.py",
      "type": "imports",
      "label": "导入 SessionStatus"
    },
    {
      "id": "edge:31cac539",
      "source": "file:src/agentkit/skills/__init__.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 IntentConfig"
    },
    {
      "id": "edge:0d6fefda",
      "source": "file:src/agentkit/skills/__init__.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 QualityGateConfig"
    },
    {
      "id": "edge:cff2ff6c",
      "source": "file:src/agentkit/skills/__init__.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 Skill"
    },
    {
      "id": "edge:64253f4f",
      "source": "file:src/agentkit/skills/__init__.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 SkillConfig"
    },
    {
      "id": "edge:304226b9",
      "source": "file:src/agentkit/skills/__init__.py",
      "target": "file:src/agentkit/skills/loader.py",
      "type": "imports",
      "label": "导入 SkillLoader"
    },
    {
      "id": "edge:e821133c",
      "source": "file:src/agentkit/skills/__init__.py",
      "target": "file:src/agentkit/skills/pipeline.py",
      "type": "imports",
      "label": "导入 SkillPipeline"
    },
    {
      "id": "edge:2150ea70",
      "source": "file:src/agentkit/skills/__init__.py",
      "target": "file:src/agentkit/skills/registry.py",
      "type": "imports",
      "label": "导入 SkillRegistry"
    },
    {
      "id": "edge:7227da3e",
      "source": "file:src/agentkit/skills/__init__.py",
      "target": "file:src/agentkit/skills/schema.py",
      "type": "imports",
      "label": "导入 CapabilityTag"
    },
    {
      "id": "edge:2e375b19",
      "source": "file:src/agentkit/skills/__init__.py",
      "target": "file:src/agentkit/skills/schema.py",
      "type": "imports",
      "label": "导入 DependencyDecl"
    },
    {
      "id": "edge:18286380",
      "source": "file:src/agentkit/skills/__init__.py",
      "target": "file:src/agentkit/skills/schema.py",
      "type": "imports",
      "label": "导入 HealthCheckResult"
    },
    {
      "id": "edge:cbd4f3e0",
      "source": "file:src/agentkit/skills/__init__.py",
      "target": "file:src/agentkit/skills/schema.py",
      "type": "imports",
      "label": "导入 SkillSpec"
    },
    {
      "id": "edge:f2361437",
      "source": "file:src/agentkit/skills/base.py",
      "target": "file:src/agentkit/core/config_driven.py",
      "type": "imports",
      "label": "导入 AgentConfig"
    },
    {
      "id": "edge:553f9139",
      "source": "file:src/agentkit/skills/base.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 ConfigValidationError"
    },
    {
      "id": "edge:498d6abc",
      "source": "file:src/agentkit/skills/base.py",
      "target": "file:src/agentkit/skills/schema.py",
      "type": "imports",
      "label": "导入 CapabilityTag"
    },
    {
      "id": "edge:8e800fb6",
      "source": "file:src/agentkit/skills/base.py",
      "target": "file:src/agentkit/skills/schema.py",
      "type": "imports",
      "label": "导入 DependencyDecl"
    },
    {
      "id": "edge:bd9faed8",
      "source": "file:src/agentkit/skills/base.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:2f50ab30",
      "source": "file:src/agentkit/skills/base.py",
      "target": "file:src/agentkit/quality/alignment.py",
      "type": "imports",
      "label": "导入 AlignmentConfig"
    },
    {
      "id": "edge:a50b5f45",
      "source": "file:src/agentkit/skills/geo_pipeline.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:8cbe24da",
      "source": "file:src/agentkit/skills/geo_pipeline.py",
      "target": "file:src/agentkit/core/shared_workspace.py",
      "type": "imports",
      "label": "导入 SharedWorkspace"
    },
    {
      "id": "edge:08c91619",
      "source": "file:src/agentkit/skills/geo_pipeline.py",
      "target": "file:src/agentkit/orchestrator/compensation.py",
      "type": "imports",
      "label": "导入 SagaOrchestrator"
    },
    {
      "id": "edge:882f1d90",
      "source": "file:src/agentkit/skills/geo_pipeline.py",
      "target": "file:src/agentkit/orchestrator/retry.py",
      "type": "imports",
      "label": "导入 StepRetryPolicy"
    },
    {
      "id": "edge:7e6291f5",
      "source": "file:src/agentkit/skills/geo_pipeline.py",
      "target": "file:src/agentkit/orchestrator/retry.py",
      "type": "imports",
      "label": "导入 execute_with_retry"
    },
    {
      "id": "edge:d307eaf9",
      "source": "file:src/agentkit/skills/geo_pipeline.py",
      "target": "file:src/agentkit/skills/registry.py",
      "type": "imports",
      "label": "导入 SkillRegistry"
    },
    {
      "id": "edge:13807bc3",
      "source": "file:src/agentkit/skills/geo_pipeline.py",
      "target": "file:src/agentkit/core/config_driven.py",
      "type": "imports",
      "label": "导入 ConfigDrivenAgent"
    },
    {
      "id": "edge:83589fab",
      "source": "file:src/agentkit/skills/loader.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 Skill"
    },
    {
      "id": "edge:862058c2",
      "source": "file:src/agentkit/skills/loader.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 SkillConfig"
    },
    {
      "id": "edge:9ecea761",
      "source": "file:src/agentkit/skills/loader.py",
      "target": "file:src/agentkit/skills/registry.py",
      "type": "imports",
      "label": "导入 SkillRegistry"
    },
    {
      "id": "edge:68387198",
      "source": "file:src/agentkit/skills/loader.py",
      "target": "file:src/agentkit/tools/registry.py",
      "type": "imports",
      "label": "导入 ToolRegistry"
    },
    {
      "id": "edge:ddf87635",
      "source": "file:src/agentkit/skills/loader.py",
      "target": "file:src/agentkit/skills/skill_md.py",
      "type": "imports",
      "label": "导入 SkillMdParser"
    },
    {
      "id": "edge:bbf1016a",
      "source": "file:src/agentkit/skills/pipeline.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 Skill"
    },
    {
      "id": "edge:c360eb8f",
      "source": "file:src/agentkit/skills/pipeline.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 SkillConfig"
    },
    {
      "id": "edge:2736837c",
      "source": "file:src/agentkit/skills/pipeline.py",
      "target": "file:src/agentkit/skills/registry.py",
      "type": "imports",
      "label": "导入 SkillRegistry"
    },
    {
      "id": "edge:2a2139b1",
      "source": "file:src/agentkit/skills/pipeline.py",
      "target": "file:src/agentkit/core/config_driven.py",
      "type": "imports",
      "label": "导入 ConfigDrivenAgent"
    },
    {
      "id": "edge:bb6c4431",
      "source": "file:src/agentkit/skills/pipeline.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:4004a9bb",
      "source": "file:src/agentkit/skills/registry.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 SkillNotFoundError"
    },
    {
      "id": "edge:9a05f6e1",
      "source": "file:src/agentkit/skills/registry.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 Skill"
    },
    {
      "id": "edge:a39d4582",
      "source": "file:src/agentkit/skills/registry.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 SkillConfig"
    },
    {
      "id": "edge:27e442e2",
      "source": "file:src/agentkit/skills/registry.py",
      "target": "file:src/agentkit/skills/schema.py",
      "type": "imports",
      "label": "导入 DependencyDecl"
    },
    {
      "id": "edge:3598de24",
      "source": "file:src/agentkit/skills/registry.py",
      "target": "file:src/agentkit/skills/schema.py",
      "type": "imports",
      "label": "导入 HealthCheckResult"
    },
    {
      "id": "edge:532d2830",
      "source": "file:src/agentkit/skills/registry.py",
      "target": "file:src/agentkit/skills/pipeline.py",
      "type": "imports",
      "label": "导入 SkillPipeline"
    },
    {
      "id": "edge:a5840e6d",
      "source": "file:src/agentkit/skills/skill_md.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 ConfigValidationError"
    },
    {
      "id": "edge:003ce3ed",
      "source": "file:src/agentkit/skills/skill_md.py",
      "target": "file:src/agentkit/skills/base.py",
      "type": "imports",
      "label": "导入 SkillConfig"
    },
    {
      "id": "edge:11ceb20a",
      "source": "file:src/agentkit/telemetry/__init__.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 get_tracer"
    },
    {
      "id": "edge:a9a94390",
      "source": "file:src/agentkit/telemetry/__init__.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 start_span"
    },
    {
      "id": "edge:13a67820",
      "source": "file:src/agentkit/telemetry/__init__.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 trace_agent"
    },
    {
      "id": "edge:27d7cc9a",
      "source": "file:src/agentkit/telemetry/__init__.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 trace_tool"
    },
    {
      "id": "edge:eeff0403",
      "source": "file:src/agentkit/telemetry/__init__.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 trace_llm"
    },
    {
      "id": "edge:4e1d6688",
      "source": "file:src/agentkit/telemetry/__init__.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 trace_pipeline_step"
    },
    {
      "id": "edge:09816dec",
      "source": "file:src/agentkit/telemetry/__init__.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 _OTEL_AVAILABLE"
    },
    {
      "id": "edge:d0572617",
      "source": "file:src/agentkit/telemetry/__init__.py",
      "target": "file:src/agentkit/telemetry/metrics.py",
      "type": "imports",
      "label": "导入 agent_request_counter"
    },
    {
      "id": "edge:acf73f0f",
      "source": "file:src/agentkit/telemetry/__init__.py",
      "target": "file:src/agentkit/telemetry/metrics.py",
      "type": "imports",
      "label": "导入 agent_duration_histogram"
    },
    {
      "id": "edge:2df79f0e",
      "source": "file:src/agentkit/telemetry/__init__.py",
      "target": "file:src/agentkit/telemetry/metrics.py",
      "type": "imports",
      "label": "导入 llm_token_histogram"
    },
    {
      "id": "edge:614b9b74",
      "source": "file:src/agentkit/telemetry/__init__.py",
      "target": "file:src/agentkit/telemetry/metrics.py",
      "type": "imports",
      "label": "导入 tool_duration_histogram"
    },
    {
      "id": "edge:8f38e065",
      "source": "file:src/agentkit/telemetry/__init__.py",
      "target": "file:src/agentkit/telemetry/metrics.py",
      "type": "imports",
      "label": "导入 pipeline_step_histogram"
    },
    {
      "id": "edge:1fff2b84",
      "source": "file:src/agentkit/telemetry/__init__.py",
      "target": "file:src/agentkit/telemetry/setup.py",
      "type": "imports",
      "label": "导入 setup_telemetry"
    },
    {
      "id": "edge:d6eb5a95",
      "source": "file:src/agentkit/telemetry/__init__.py",
      "target": "file:src/agentkit/telemetry/tracer.py",
      "type": "imports",
      "label": "导入 TelemetryConfig"
    },
    {
      "id": "edge:7114ff3b",
      "source": "file:src/agentkit/telemetry/__init__.py",
      "target": "file:src/agentkit/telemetry/tracer.py",
      "type": "imports",
      "label": "导入 NoOpTracer"
    },
    {
      "id": "edge:18ea9c90",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:759147bd",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/function_tool.py",
      "type": "imports",
      "label": "导入 FunctionTool"
    },
    {
      "id": "edge:03b00987",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/agent_tool.py",
      "type": "imports",
      "label": "导入 AgentTool"
    },
    {
      "id": "edge:46f6a863",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/mcp_tool.py",
      "type": "imports",
      "label": "导入 MCPTool"
    },
    {
      "id": "edge:496bc87f",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/registry.py",
      "type": "imports",
      "label": "导入 ToolRegistry"
    },
    {
      "id": "edge:55dc390e",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/composition.py",
      "type": "imports",
      "label": "导入 SequentialChain"
    },
    {
      "id": "edge:8f801a90",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/composition.py",
      "type": "imports",
      "label": "导入 ParallelFanOut"
    },
    {
      "id": "edge:f59ed203",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/composition.py",
      "type": "imports",
      "label": "导入 DynamicSelector"
    },
    {
      "id": "edge:2c3a40e5",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/web_crawl.py",
      "type": "imports",
      "label": "导入 WebCrawlTool"
    },
    {
      "id": "edge:c087d690",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/schema_tools.py",
      "type": "imports",
      "label": "导入 SchemaExtractTool"
    },
    {
      "id": "edge:2c3cf914",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/schema_tools.py",
      "type": "imports",
      "label": "导入 SchemaGenerateTool"
    },
    {
      "id": "edge:bebffe71",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/baidu_search.py",
      "type": "imports",
      "label": "导入 BaiduSearchTool"
    },
    {
      "id": "edge:e20de2e4",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/shell.py",
      "type": "imports",
      "label": "导入 ShellTool"
    },
    {
      "id": "edge:88dc4244",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/terminal_session.py",
      "type": "imports",
      "label": "导入 TerminalSession"
    },
    {
      "id": "edge:1d516a17",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/terminal_session.py",
      "type": "imports",
      "label": "导入 TerminalSessionManager"
    },
    {
      "id": "edge:17fa7f45",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/pty_session.py",
      "type": "imports",
      "label": "导入 PTYSession"
    },
    {
      "id": "edge:d7230454",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/output_parser.py",
      "type": "imports",
      "label": "导入 OutputParser"
    },
    {
      "id": "edge:429bb7c0",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/output_parser.py",
      "type": "imports",
      "label": "导入 ParsedOutput"
    },
    {
      "id": "edge:a0612001",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/output_parser.py",
      "type": "imports",
      "label": "导入 ErrorType"
    },
    {
      "id": "edge:7e8262be",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/ask_human.py",
      "type": "imports",
      "label": "导入 AskHumanTool"
    },
    {
      "id": "edge:dbd9525a",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/memory_tool.py",
      "type": "imports",
      "label": "导入 MemoryTool"
    },
    {
      "id": "edge:ef3db212",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/web_search.py",
      "type": "imports",
      "label": "导入 WebSearchTool"
    },
    {
      "id": "edge:eedad3c1",
      "source": "file:src/agentkit/tools/__init__.py",
      "target": "file:src/agentkit/tools/headroom_retrieve.py",
      "type": "imports",
      "label": "导入 HeadroomRetrieveTool"
    },
    {
      "id": "edge:3c699022",
      "source": "file:src/agentkit/tools/agent_tool.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:d13a697e",
      "source": "file:src/agentkit/tools/agent_tool.py",
      "target": "file:src/agentkit/core/protocol.py",
      "type": "imports",
      "label": "导入 TaskMessage"
    },
    {
      "id": "edge:8be43a8f",
      "source": "file:src/agentkit/tools/ask_human.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:cd1821e6",
      "source": "file:src/agentkit/tools/baidu_search.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:39c69b0d",
      "source": "file:src/agentkit/tools/base.py",
      "target": "file:src/agentkit/telemetry/tracing.py",
      "type": "imports",
      "label": "导入 start_span"
    },
    {
      "id": "edge:5df6ba79",
      "source": "file:src/agentkit/tools/base.py",
      "target": "file:src/agentkit/telemetry/metrics.py",
      "type": "imports",
      "label": "导入 tool_duration_histogram"
    },
    {
      "id": "edge:c8185352",
      "source": "file:src/agentkit/tools/composition.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:6d0d71a3",
      "source": "file:src/agentkit/tools/computer_use.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:52c5daf0",
      "source": "file:src/agentkit/tools/computer_use.py",
      "target": "file:src/agentkit/tools/computer_use_session.py",
      "type": "imports",
      "label": "导入 ComputerUseSession"
    },
    {
      "id": "edge:48f32354",
      "source": "file:src/agentkit/tools/computer_use.py",
      "target": "file:src/agentkit/tools/computer_use_session.py",
      "type": "imports",
      "label": "导入 InMemoryComputerUseSession"
    },
    {
      "id": "edge:545e22d7",
      "source": "file:src/agentkit/tools/computer_use.py",
      "target": "file:src/agentkit/tools/computer_use_session.py",
      "type": "imports",
      "label": "导入 ComputerUseSessionManager"
    },
    {
      "id": "edge:17c3287b",
      "source": "file:src/agentkit/tools/computer_use.py",
      "target": "file:src/agentkit/tools/computer_use_session.py",
      "type": "imports",
      "label": "导入 ActionResult"
    },
    {
      "id": "edge:d5530e4d",
      "source": "file:src/agentkit/tools/computer_use.py",
      "target": "file:src/agentkit/tools/computer_use_recorder.py",
      "type": "imports",
      "label": "导入 ComputerUseRecorder"
    },
    {
      "id": "edge:52a9f1d2",
      "source": "file:src/agentkit/tools/computer_use.py",
      "target": "file:src/agentkit/utils/security.py",
      "type": "imports",
      "label": "导入 is_safe_url"
    },
    {
      "id": "edge:12b0706e",
      "source": "file:src/agentkit/tools/computer_use_recorder.py",
      "target": "file:src/agentkit/tools/computer_use_session.py",
      "type": "imports",
      "label": "导入 ComputerUseSession"
    },
    {
      "id": "edge:9213fe03",
      "source": "file:src/agentkit/tools/computer_use_recorder.py",
      "target": "file:src/agentkit/tools/computer_use_session.py",
      "type": "imports",
      "label": "导入 ActionResult"
    },
    {
      "id": "edge:5411faae",
      "source": "file:src/agentkit/tools/function_tool.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:f7731bf2",
      "source": "file:src/agentkit/tools/headroom_retrieve.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:45efc72e",
      "source": "file:src/agentkit/tools/mcp_tool.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:2f3c0e43",
      "source": "file:src/agentkit/tools/memory_tool.py",
      "target": "file:src/agentkit/memory/profile.py",
      "type": "imports",
      "label": "导入 MemoryFile"
    },
    {
      "id": "edge:8cdf8d24",
      "source": "file:src/agentkit/tools/memory_tool.py",
      "target": "file:src/agentkit/memory/profile.py",
      "type": "imports",
      "label": "导入 MemoryStore"
    },
    {
      "id": "edge:2b00cc36",
      "source": "file:src/agentkit/tools/memory_tool.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:c4b237b0",
      "source": "file:src/agentkit/tools/registry.py",
      "target": "file:src/agentkit/core/exceptions.py",
      "type": "imports",
      "label": "导入 ToolNotFoundError"
    },
    {
      "id": "edge:a44953a3",
      "source": "file:src/agentkit/tools/registry.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:2a107044",
      "source": "file:src/agentkit/tools/schema_tools.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:59296f94",
      "source": "file:src/agentkit/tools/shell.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:c2f63c79",
      "source": "file:src/agentkit/tools/shell.py",
      "target": "file:src/agentkit/tools/output_parser.py",
      "type": "imports",
      "label": "导入 OutputParser"
    },
    {
      "id": "edge:efa898eb",
      "source": "file:src/agentkit/tools/shell.py",
      "target": "file:src/agentkit/tools/output_parser.py",
      "type": "imports",
      "label": "导入 ParsedOutput"
    },
    {
      "id": "edge:1de99799",
      "source": "file:src/agentkit/tools/shell.py",
      "target": "file:src/agentkit/tools/terminal_session.py",
      "type": "imports",
      "label": "导入 TerminalSession"
    },
    {
      "id": "edge:bd883a95",
      "source": "file:src/agentkit/tools/shell.py",
      "target": "file:src/agentkit/tools/terminal_session.py",
      "type": "imports",
      "label": "导入 TerminalSessionManager"
    },
    {
      "id": "edge:8ca0b959",
      "source": "file:src/agentkit/tools/shell.py",
      "target": "file:src/agentkit/tools/pty_session.py",
      "type": "imports",
      "label": "导入 PTYSession"
    },
    {
      "id": "edge:4c70c176",
      "source": "file:src/agentkit/tools/skill_install.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:770ec2cb",
      "source": "file:src/agentkit/tools/skill_install.py",
      "target": "file:src/agentkit/skills/loader.py",
      "type": "imports",
      "label": "导入 SkillLoader"
    },
    {
      "id": "edge:c50bd929",
      "source": "file:src/agentkit/tools/terminal_session.py",
      "target": "file:src/agentkit/tools/output_parser.py",
      "type": "imports",
      "label": "导入 OutputParser"
    },
    {
      "id": "edge:6e46d2c2",
      "source": "file:src/agentkit/tools/terminal_session.py",
      "target": "file:src/agentkit/tools/output_parser.py",
      "type": "imports",
      "label": "导入 ParsedOutput"
    },
    {
      "id": "edge:510e0240",
      "source": "file:src/agentkit/tools/web_crawl.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "id": "edge:19ed072e",
      "source": "file:src/agentkit/tools/web_search.py",
      "target": "file:src/agentkit/tools/base.py",
      "type": "imports",
      "label": "导入 Tool"
    },
    {
      "source": "class:src/agentkit/core/plan_exec_engine.py:PlanExecEngine",
      "target": "class:src/agentkit/core/goal_planner.py:GoalPlanner",
      "type": "depends_on",
      "weight": 0.8
    },
    {
      "source": "class:src/agentkit/core/plan_exec_engine.py:PlanExecEngine",
      "target": "class:src/agentkit/core/plan_exec_engine.py:ReActStepExecutor",
      "type": "creates",
      "weight": 0.7
    },
    {
      "source": "class:src/agentkit/core/plan_exec_engine.py:ReActStepExecutor",
      "target": "class:src/agentkit/core/plan_exec_engine.py:_ReActStepAgent",
      "type": "creates",
      "weight": 0.7
    },
    {
      "source": "class:src/agentkit/core/plan_exec_engine.py:_ReActStepAgent",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "weight": 0.7
    },
    {
      "source": "class:src/agentkit/core/plan_exec_engine.py:PlanExecEngine",
      "target": "file:src/agentkit/core/shared_workspace.py",
      "type": "imports",
      "weight": 0.7
    },
    {
      "source": "class:src/agentkit/experts/orchestrator.py:TeamOrchestrator",
      "target": "class:src/agentkit/experts/team.py:ExpertTeam",
      "type": "depends_on",
      "weight": 0.8
    },
    {
      "source": "class:src/agentkit/experts/orchestrator.py:TeamOrchestrator",
      "target": "class:src/agentkit/experts/plan.py:CollaborationPlan",
      "type": "depends_on",
      "weight": 0.8
    },
    {
      "source": "class:src/agentkit/experts/orchestrator.py:TeamOrchestrator",
      "target": "class:src/agentkit/experts/expert.py:Expert",
      "type": "calls",
      "weight": 0.8
    },
    {
      "source": "class:src/agentkit/experts/orchestrator.py:TeamOrchestrator",
      "target": "file:src/agentkit/core/shared_workspace.py",
      "type": "imports",
      "weight": 0.7
    },
    {
      "source": "class:src/agentkit/experts/orchestrator.py:TeamOrchestrator",
      "target": "class:src/agentkit/experts/plan.py:MergeStrategy",
      "type": "uses",
      "weight": 0.6
    },
    {
      "source": "class:src/agentkit/experts/orchestrator.py:TeamOrchestrator",
      "target": "class:src/agentkit/experts/plan.py:ParallelType",
      "type": "uses",
      "weight": 0.6
    },
    {
      "source": "class:src/agentkit/experts/team.py:ExpertTeam",
      "target": "class:src/agentkit/experts/expert.py:Expert",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "class:src/agentkit/experts/team.py:ExpertTeam",
      "target": "class:src/agentkit/experts/config.py:ExpertConfig",
      "type": "uses",
      "weight": 0.6
    },
    {
      "source": "class:src/agentkit/experts/team.py:ExpertTeam",
      "target": "class:src/agentkit/experts/plan.py:CollaborationPlan",
      "type": "uses",
      "weight": 0.6
    },
    {
      "source": "class:src/agentkit/experts/team.py:ExpertTeam",
      "target": "file:src/agentkit/core/shared_workspace.py",
      "type": "imports",
      "weight": 0.7
    },
    {
      "source": "class:src/agentkit/experts/expert.py:Expert",
      "target": "class:src/agentkit/experts/config.py:ExpertConfig",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "class:src/agentkit/experts/expert.py:Expert",
      "target": "file:src/agentkit/core/config_driven.py",
      "type": "imports",
      "weight": 0.7
    },
    {
      "source": "class:src/agentkit/experts/router.py:ExpertTeamRouter",
      "target": "class:src/agentkit/experts/registry.py:ExpertTemplateRegistry",
      "type": "uses",
      "weight": 0.6
    },
    {
      "source": "class:src/agentkit/chat/skill_routing.py:CostAwareRouter",
      "target": "class:src/agentkit/experts/router.py:ExpertTeamRouter",
      "type": "depends_on",
      "weight": 0.8
    },
    {
      "source": "file:src/agentkit/server/routes/chat.py",
      "target": "file:src/agentkit/chat/skill_routing.py",
      "type": "imports",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/server/routes/chat.py",
      "target": "file:src/agentkit/core/react.py",
      "type": "imports",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/server/app.py",
      "target": "file:src/agentkit/server/config.py",
      "type": "imports",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/server/app.py",
      "target": "file:src/agentkit/server/middleware.py",
      "type": "imports",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/server/frontend/src/stores/chat.ts",
      "target": "file:src/agentkit/server/frontend/src/stores/team.ts",
      "type": "imports",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/server/frontend/src/components/chat/ExpertTeamView.vue",
      "target": "file:src/agentkit/server/frontend/src/stores/team.ts",
      "type": "imports",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/server/frontend/src/components/chat/PlanVisualization.vue",
      "target": "file:src/agentkit/server/frontend/src/stores/team.ts",
      "type": "imports",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/server/frontend/src/views/ChatView.vue",
      "target": "file:src/agentkit/server/frontend/src/stores/chat.ts",
      "type": "imports",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/server/frontend/src/views/ChatView.vue",
      "target": "file:src/agentkit/server/frontend/src/components/chat/ExpertTeamView.vue",
      "type": "imports",
      "weight": 0.7
    },
    {
      "source": "file:tests/unit/experts/test_team_orchestrator.py",
      "target": "class:src/agentkit/experts/orchestrator.py:TeamOrchestrator",
      "type": "tested_by",
      "weight": 0.5
    },
    {
      "source": "file:tests/unit/core/test_autonomous_research_task.py",
      "target": "class:src/agentkit/core/plan_exec_engine.py:PlanExecEngine",
      "type": "tested_by",
      "weight": 0.5
    },
    {
      "source": "file:tests/unit/experts/test_team.py",
      "target": "class:src/agentkit/experts/team.py:ExpertTeam",
      "type": "tested_by",
      "weight": 0.5
    },
    {
      "source": "file:src/agentkit/core/plan_exec_engine.py",
      "target": "class:src/agentkit/core/plan_exec_engine.py:PlanExecEngine",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/core/plan_exec_engine.py",
      "target": "class:src/agentkit/core/plan_exec_engine.py:ReActStepExecutor",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/core/plan_exec_engine.py",
      "target": "class:src/agentkit/core/plan_exec_engine.py:_ReActStepAgent",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/core/goal_planner.py",
      "target": "class:src/agentkit/core/goal_planner.py:GoalPlanner",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/experts/orchestrator.py",
      "target": "class:src/agentkit/experts/orchestrator.py:TeamOrchestrator",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/experts/team.py",
      "target": "class:src/agentkit/experts/team.py:ExpertTeam",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/experts/team.py",
      "target": "class:src/agentkit/experts/team.py:TeamStatus",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/experts/router.py",
      "target": "class:src/agentkit/experts/router.py:ExpertTeamRouter",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/experts/config.py",
      "target": "class:src/agentkit/experts/config.py:ExpertConfig",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/experts/config.py",
      "target": "class:src/agentkit/experts/config.py:ExpertTemplate",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/experts/expert.py",
      "target": "class:src/agentkit/experts/expert.py:Expert",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/experts/plan.py",
      "target": "class:src/agentkit/experts/plan.py:CollaborationPlan",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/experts/plan.py",
      "target": "class:src/agentkit/experts/plan.py:PlanPhase",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/experts/plan.py",
      "target": "class:src/agentkit/experts/plan.py:MergeStrategy",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/experts/plan.py",
      "target": "class:src/agentkit/experts/plan.py:ParallelType",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/experts/registry.py",
      "target": "class:src/agentkit/experts/registry.py:ExpertTemplateRegistry",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/chat/skill_routing.py",
      "target": "class:src/agentkit/chat/skill_routing.py:CostAwareRouter",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/server/config.py",
      "target": "class:src/agentkit/server/config.py:ServerConfig",
      "type": "contains",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/server/config.py",
      "target": "func:_resolve_env_vars",
      "type": "contains",
      "label": "定义函数 _resolve_env_vars",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/server/config.py",
      "target": "func:_deep_resolve",
      "type": "contains",
      "label": "定义函数 _deep_resolve",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/server/config.py",
      "target": "func:load_dotenv",
      "type": "contains",
      "label": "定义函数 load_dotenv",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/server/config.py",
      "target": "func:load_config_with_dotenv",
      "type": "contains",
      "label": "定义函数 load_config_with_dotenv",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/server/config.py",
      "target": "func:find_config_path",
      "type": "contains",
      "label": "定义函数 find_config_path",
      "weight": 1.0
    },
    {
      "source": "class:src/agentkit/server/config.py:ServerConfig",
      "target": "func:has_llm_provider",
      "type": "contains",
      "label": "方法 has_llm_provider",
      "weight": 1.0
    },
    {
      "source": "func:load_config_with_dotenv",
      "target": "func:load_dotenv",
      "type": "calls",
      "label": "调用 load_dotenv",
      "weight": 0.8
    },
    {
      "source": "func:load_config_with_dotenv",
      "target": "class:src/agentkit/server/config.py:ServerConfig",
      "type": "calls",
      "label": "调用 ServerConfig.from_yaml",
      "weight": 0.8
    },
    {
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "func:_reverse_resolve_env",
      "type": "contains",
      "label": "定义函数 _reverse_resolve_env",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "func:_write_env_var",
      "type": "contains",
      "label": "定义函数 _write_env_var",
      "weight": 1.0
    },
    {
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "func:_deep_update_ruamel",
      "type": "contains",
      "label": "定义函数 _deep_update_ruamel",
      "weight": 1.0
    },
    {
      "source": "func:_write_yaml_config",
      "target": "func:_reverse_resolve_env",
      "type": "calls",
      "label": "调用 _reverse_resolve_env 保留 ${VAR} 引用",
      "weight": 0.8
    },
    {
      "source": "func:_write_yaml_config",
      "target": "func:_deep_update_ruamel",
      "type": "calls",
      "label": "调用 _deep_update_ruamel 保留 YAML 注释",
      "weight": 0.8
    },
    {
      "source": "func:update_llm_settings",
      "target": "func:_write_env_var",
      "type": "calls",
      "label": "调用 _write_env_var 写入 API Key 到 .env",
      "weight": 0.8
    },
    {
      "source": "file:src/agentkit/server/client_config.py",
      "target": "func:_deep_resolve",
      "type": "imports",
      "label": "导入 _deep_resolve 解析 clients.yaml 中的 ${VAR}",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/cli/chat.py",
      "target": "func:find_config_path",
      "type": "calls",
      "label": "调用 find_config_path 查找配置文件",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/cli/chat.py",
      "target": "func:load_config_with_dotenv",
      "type": "calls",
      "label": "调用 load_config_with_dotenv 加载配置",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/cli/main.py",
      "target": "func:find_config_path",
      "type": "calls",
      "label": "调用 find_config_path 查找配置文件",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/cli/main.py",
      "target": "func:load_config_with_dotenv",
      "type": "calls",
      "label": "调用 load_config_with_dotenv 加载配置",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/cli/task.py",
      "target": "func:find_config_path",
      "type": "calls",
      "label": "调用 find_config_path 查找配置文件",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/cli/task.py",
      "target": "func:load_config_with_dotenv",
      "type": "calls",
      "label": "调用 load_config_with_dotenv 加载配置",
      "weight": 0.7
    },
    {
      "source": "file:configs/geo_server.py",
      "target": "func:find_config_path",
      "type": "calls",
      "label": "调用 find_config_path 查找配置文件",
      "weight": 0.7
    },
    {
      "source": "file:configs/geo_server.py",
      "target": "func:load_config_with_dotenv",
      "type": "calls",
      "label": "调用 load_config_with_dotenv 加载配置",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/server/app.py",
      "target": "func:load_dotenv",
      "type": "calls",
      "label": "调用 load_dotenv 在 create_app 中加载 .env",
      "weight": 0.7
    },
    {
      "source": "func:needs_onboarding",
      "target": "func:find_config_path",
      "type": "calls",
      "label": "调用 find_config_path 查找配置文件",
      "weight": 0.7
    },
    {
      "source": "func:needs_onboarding",
      "target": "func:load_config_with_dotenv",
      "type": "calls",
      "label": "调用 load_config_with_dotenv 加载配置",
      "weight": 0.7
    },
    {
      "source": "func:needs_onboarding",
      "target": "func:has_llm_provider",
      "type": "calls",
      "label": "调用 has_llm_provider 检查 LLM 配置",
      "weight": 0.8
    },
    {
      "source": "file:src/agentkit/cli/chat.py",
      "target": "file:src/agentkit/server/config.py",
      "type": "imports",
      "label": "导入 find_config_path, load_config_with_dotenv",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/cli/main.py",
      "target": "file:src/agentkit/server/config.py",
      "type": "imports",
      "label": "导入 find_config_path, load_config_with_dotenv",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/cli/task.py",
      "target": "file:src/agentkit/server/config.py",
      "type": "imports",
      "label": "导入 find_config_path, load_config_with_dotenv",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/cli/onboarding.py",
      "target": "file:src/agentkit/server/config.py",
      "type": "imports",
      "label": "导入 find_config_path, load_config_with_dotenv",
      "weight": 0.7
    },
    {
      "source": "file:src/agentkit/server/routes/settings.py",
      "target": "file:src/agentkit/server/config.py",
      "type": "imports",
      "label": "间接依赖 _deep_resolve / _resolve_env_vars",
      "weight": 0.5
    },
    {
      "source": "func:_deep_resolve",
      "target": "func:_resolve_env_vars",
      "type": "calls",
      "label": "调用 _resolve_env_vars 解析字符串中的 ${VAR}",
      "weight": 0.8
    },
    {
      "source": "class:src/agentkit/server/config.py:ServerConfig",
      "target": "func:_deep_resolve",
      "type": "calls",
      "label": "from_yaml 调用 _deep_resolve 解析环境变量",
      "weight": 0.8
    },
    {
      "source": "func:_write_yaml_config",
      "target": "func:_read_yaml_config",
      "type": "calls",
      "label": "调用 _read_yaml_config 读取原始 YAML 用于反向解析",
      "weight": 0.7
    },
    {
      "source": "file:tests/unit/server/test_settings_routes.py",
      "target": "file:src/agentkit/server/routes/settings.py",
      "type": "tested_by",
      "label": "测试 Settings API 路由",
      "weight": 0.5
    },
    {
      "source": "file:tests/unit/test_cli.py",
      "target": "file:src/agentkit/cli/main.py",
      "type": "tested_by",
      "label": "测试 CLI 命令",
      "weight": 0.5
    }
  ],
  "tours": [
    {
      "id": "tour:entry-points",
      "name": "入口点导览",
      "description": "从项目入口开始，了解如何启动和使用AgentKit",
      "steps": [
        {
          "nodeId": "file:src/agentkit/__main__.py",
          "why": "Python模块入口，python -m agentkit"
        },
        {
          "nodeId": "file:src/agentkit/__init__.py",
          "why": "包入口，导出核心公共API"
        },
        {
          "nodeId": "file:src/agentkit/cli/main.py",
          "why": "CLI主入口，Typer应用定义"
        },
        {
          "nodeId": "file:src/agentkit/server/app.py",
          "why": "HTTP服务入口，FastAPI应用创建"
        }
      ]
    },
    {
      "id": "tour:agent-lifecycle",
      "name": "Agent生命周期导览",
      "description": "深入理解Agent从创建到执行任务的完整生命周期",
      "steps": [
        {
          "nodeId": "class:BaseAgent",
          "why": "Agent基类，定义标准生命周期和可插拔能力"
        },
        {
          "nodeId": "func:BaseAgent.start",
          "why": "Agent启动流程：连接Redis→注册→心跳→监听"
        },
        {
          "nodeId": "func:BaseAgent.execute",
          "why": "任务执行框架方法：on_task_start→handle_task→quality_gate→on_task_complete"
        },
        {
          "nodeId": "func:BaseAgent.handle_task",
          "why": "抽象方法，子类实现业务逻辑"
        },
        {
          "nodeId": "class:ConfigDrivenAgent",
          "why": "配置驱动Agent，从YAML自动组装"
        },
        {
          "nodeId": "func:ConfigDrivenAgent.handle_task",
          "why": "根据execution_mode路由到react/direct/custom模式"
        },
        {
          "nodeId": "class:AgentConfig",
          "why": "Agent配置模型，支持YAML/Dict构建"
        }
      ]
    },
    {
      "id": "tour:react-engine",
      "name": "ReAct引擎导览",
      "description": "理解ReAct推理-行动循环的核心实现",
      "steps": [
        {
          "nodeId": "class:ReActEngine",
          "why": "ReAct引擎核心，Think→Act→Observe循环"
        },
        {
          "nodeId": "func:ReActEngine.execute",
          "why": "执行ReAct循环，支持超时和取消"
        },
        {
          "nodeId": "func:ReActEngine.execute_stream",
          "why": "流式执行，逐步yield事件"
        },
        {
          "nodeId": "func:ReActEngine._execute_tool",
          "why": "工具调用执行，处理成功和失败"
        },
        {
          "nodeId": "func:ReActEngine._parse_text_tool_calls",
          "why": "文本解析模式，支持Action和代码块格式"
        },
        {
          "nodeId": "class:ReActStep",
          "why": "单步记录数据结构"
        },
        {
          "nodeId": "class:ReActResult",
          "why": "ReAct执行结果数据结构"
        },
        {
          "nodeId": "class:ReActEvent",
          "why": "流式执行事件数据结构"
        }
      ]
    },
    {
      "id": "tour:llm-gateway",
      "name": "LLM网关导览",
      "description": "了解多Provider统一网关的设计和实现",
      "steps": [
        {
          "nodeId": "class:LLMGateway",
          "why": "LLM网关核心，统一多Provider调用接口"
        },
        {
          "nodeId": "file:src/agentkit/llm/protocol.py",
          "why": "LLM协议定义，LLMProvider/LLMRequest/LLMResponse"
        },
        {
          "nodeId": "file:src/agentkit/llm/config.py",
          "why": "模型别名和Provider配置"
        },
        {
          "nodeId": "file:src/agentkit/llm/providers/openai.py",
          "why": "OpenAI Provider实现"
        },
        {
          "nodeId": "file:src/agentkit/llm/providers/anthropic.py",
          "why": "Anthropic Provider实现"
        },
        {
          "nodeId": "file:src/agentkit/llm/retry.py",
          "why": "LLM重试策略"
        }
      ]
    },
    {
      "id": "tour:memory-system",
      "name": "记忆系统导览",
      "description": "理解多层记忆系统的架构和实现",
      "steps": [
        {
          "nodeId": "file:src/agentkit/memory/base.py",
          "why": "记忆基类接口定义"
        },
        {
          "nodeId": "file:src/agentkit/memory/retriever.py",
          "why": "统一记忆检索器，整合工作/情景/语义记忆"
        },
        {
          "nodeId": "file:src/agentkit/memory/working.py",
          "why": "工作记忆 - 基于Redis的短期记忆"
        },
        {
          "nodeId": "file:src/agentkit/memory/episodic.py",
          "why": "情景记忆 - 基于向量的长期记忆"
        },
        {
          "nodeId": "file:src/agentkit/memory/semantic.py",
          "why": "语义记忆 - RAG服务集成"
        },
        {
          "nodeId": "file:src/agentkit/memory/embedder.py",
          "why": "文本向量化嵌入器"
        }
      ]
    },
    {
      "id": "tour:orchestration",
      "name": "编排系统导览",
      "description": "了解多Agent协作编排和Pipeline引擎",
      "steps": [
        {
          "nodeId": "class:Orchestrator",
          "why": "多Agent协作编排器，Orchestrator-Worker模式"
        },
        {
          "nodeId": "func:Orchestrator.execute",
          "why": "编排执行：分解→执行→汇总"
        },
        {
          "nodeId": "func:Orchestrator.execute_adaptive",
          "why": "自适应编排：执行→评估→再分解循环"
        },
        {
          "nodeId": "file:src/agentkit/orchestrator/pipeline_engine.py",
          "why": "Pipeline引擎，执行DAG工作流"
        },
        {
          "nodeId": "file:src/agentkit/orchestrator/pipeline_schema.py",
          "why": "Pipeline配置模型"
        },
        {
          "nodeId": "file:src/agentkit/orchestrator/reflection.py",
          "why": "执行后反思模块"
        }
      ]
    },
    {
      "id": "tour:skills-router",
      "name": "技能与路由导览",
      "description": "了解技能定义、注册和意图路由机制",
      "steps": [
        {
          "nodeId": "file:src/agentkit/skills/base.py",
          "why": "技能基类和配置定义"
        },
        {
          "nodeId": "class:SkillRegistry",
          "why": "技能注册中心"
        },
        {
          "nodeId": "file:src/agentkit/skills/loader.py",
          "why": "从YAML加载技能定义"
        },
        {
          "nodeId": "class:IntentRouter",
          "why": "意图路由器，匹配用户输入到技能"
        },
        {
          "nodeId": "file:src/agentkit/router/intent.py",
          "why": "意图路由实现"
        }
      ]
    },
    {
      "id": "tour:evolution",
      "name": "进化系统导览",
      "description": "了解Agent自我进化的机制和实现",
      "steps": [
        {
          "nodeId": "file:src/agentkit/evolution/lifecycle.py",
          "why": "进化生命周期Mixin"
        },
        {
          "nodeId": "file:src/agentkit/evolution/reflector.py",
          "why": "反思器 - 分析结果生成改进建议"
        },
        {
          "nodeId": "file:src/agentkit/evolution/prompt_optimizer.py",
          "why": "Prompt自动优化"
        },
        {
          "nodeId": "file:src/agentkit/evolution/genetic.py",
          "why": "遗传算法进化"
        },
        {
          "nodeId": "file:src/agentkit/evolution/ab_tester.py",
          "why": "A/B测试对比"
        }
      ]
    },
    {
      "id": "tour:infrastructure",
      "name": "基础设施导览",
      "description": "了解消息总线、会话管理、遥测等基础设施",
      "steps": [
        {
          "nodeId": "file:src/agentkit/bus/protocol.py",
          "why": "消息总线协议接口"
        },
        {
          "nodeId": "file:src/agentkit/bus/redis_bus.py",
          "why": "Redis Pub/Sub消息总线"
        },
        {
          "nodeId": "file:src/agentkit/bus/memory_bus.py",
          "why": "进程内消息总线"
        },
        {
          "nodeId": "file:src/agentkit/session/manager.py",
          "why": "会话管理器"
        },
        {
          "nodeId": "file:src/agentkit/telemetry/tracing.py",
          "why": "OpenTelemetry追踪集成"
        },
        {
          "nodeId": "file:src/agentkit/telemetry/metrics.py",
          "why": "运行指标收集"
        }
      ]
    }
  ]
}