Skip to main content

Use json5 for view-based workflows configuration

Project description

Introduction

  • Use json5 for view-based workflows configuration

Python

Use

  uv add pyautogui-flowjson --index-url https://pypi.org/simple
  uv run flowjson -h # 查看帮助
  uv run flowjson --workflowJsonAddress tdd.json5 --imagesDirPath $PWD/src/common/images/tdd --isDebug # vscode 示例
  uvx -p 3.11 --from pyautogui-flowjson flowjson --workflowJsonAddress $PWD/src/common/jsons/tdd.json5 --imagesDirPath $PWD/src/common/images/tdd --isDebug # 使用uvx

Development Project

  uv sync # 仅安装py依赖
  rm -rf src/**/__pycache__ # 清空编译产物
  uv run -m test.index # 测试
  # uv run -m src.index --workflowJsonAddress tdd.json5 --imagesDirPath $PWD/src/common/images/tdd --isDebug # vscode 示例

Tip

  • pyautogui.moveTo(0, 0) wins 上会报错 pyautogui.FailSafeException: PyAutoGUI fail-safe triggered from mouse moving to a corner of the screen. To disable this fail-safe, set pyautogui.FAILSAFE to False. DISABLING FAIL-SAFE IS NOT RECOMMENDED

Node

MCP

Use

{
  "mcpServers": {
    "mcp-server-pyautogui": {
      "command": "npx",
      "args": [
        "--registry=https://registry.npmmirror.com",
        "-y",
        "@zeroer/mcp-server-pyautogui"
      ]
    }
  }
}

Development Project

  pnpm bootstrap # 安装node和py依赖

Tip

  • 混合一个 js 与 py 的包 需要 依赖 uv

  • 关于 mcp 的调试 @modelcontextprotocol/inspector 并不是很好用

    • 全流程 可以用 vscode cline 调试
    • 只调试 Mcp 服务可以 node dist/index.js 将功能立执行去调试
  • 关于 mcp client 对 mcp server 的支持方式

    • vscode-cline 是使用一套 系统提示词 vscode-cline-system-pe
      • 优点 兼容所有模型
      • 缺点 出现诸如 可选参数的幻觉 模型 并不能准确 根据 inputSchema required 字段来识别哪些是可选参数
        • 所以即便使用 .optional() 声明了可选 也需要在 describe 写明 参数可选 才能减少模型参数可选幻觉
        • 针对 cline 应该在系统提示词明确规则 inputSchema required 标识必填字段 否则就是可选
    • Cherry Studio
      • 25.04 前 是使用 Mcp 的工具转换成 function call 的标准
        • 优点 支持 function call 对 inputSchema 解析很稳定 幻觉少
        • 缺点 不是所有模型都实现了 function call 导致不是所有模型都能用 mcp
      • 25.04 后 改成了系统提示词 vscode-cline-system-pe
  • 智能体 调试 流式输出 转 json

    Role 角色
    • 你是 一名流式响应报文还原专家 擅长根据用户输入的内容还原原始的响应体 JSON
    Skills 技能
    • 当用户提供丢失的响应报文片段时 首先分析片段的结构和内内容
    • 根据分析结果 推测并还原完整的原始响应体 JSON 内
    • 如果需要 可以询问用户更多背景信息以提高还原精度
    Constraints 约束
    • 仅讨论与 JSON 内容相关的主题 拒绝回答与此无关的问题
    • 输出内容必须按照给定的格式组织 不得偏离框架要求
    • 输出结果 放到```json 中展示 格式为标准 JSON { "key1": "value1" } 参考例子
    Example 例子

    输入

    data: {"choices":[{"delta":{"content":"用户","role":"assistant"},"index":0}],"created":1744896730,"id":"021744896728055243395cc7f2861e4cc1d825bd853dc612fda41","model":"deepseek-v3-250324","service_tier":"default","object":"chat.completion.chunk","usage":null} data: {"choices":[{"delta":{"content":"请求","role":"assistant"},"index":0}],"created":1744896730,"id":"021744896728055243395cc7f2861e4cc1d825bd853dc612fda41","model":"deepseek-v3-250324","service_tier":"default","object":"chat.completion.chunk","usage":null} data: {"choices":[{"delta":{"content":"获取","role":"assistant"},"index":0}],"created":1744896730,"id":"021744896728055243395cc7f2861e4cc1d825bd853dc612fda41","model":"deepseek-v3-250324","service_tier":"default","object":"chat.completion.chunk","usage":null}

    输出

    {
      "data": {
        "choices": [
          {
            "delta": { "content": "用户请求获取", "role": "assistant" },
            "index": 0
          }
        ],
        "created": 1744896730,
        "id": "021744896728055243395cc7f2861e4cc1d825bd853dc612fda41",
        "model": "deepseek-v3-250324",
        "service_tier": "default",
        "object": "chat.completion.chunk",
        "usage": null
      }
    }
    
  • 智能体 写 mcp

    需求
    • 基于 参考资料 帮我写一个 MCP Client 集成的 SDK
      • 可以集成本地启动的 Mcp Server
      • 可以集成远程启动的 Mcp Server
      • 具备 禁用/启用 刷新 Mcp server 的能力
      • Mcp Server json 维护以 mcp.json 参考
      {
        "mcpServers": {
          "mcp-server-pyautogui": {
            "transportType": "stdio",
            "disabled": false,
            "command": "npx",
            "args": [
              "--registry=https://registry.npmmirror.com",
              "-y",
              "@zeroer/mcp-server-pyautogui"
            ]
          },
          "map-modelscope-fetch": {
            "transportType": "sse",
            "disabled": false,
            "url": "https://mcp-68baa41b-7acc-4329.api-inference.modelscope.cn/sse"
          }
        }
      }
      
    参考资料
    要求
    • 使用 TypeScript 编写 要求功能简洁、只包含关键功能
    • 编写简洁清晰的注释和说明(使用中文)
    • 使用 pnpm 做 monorepo 管理

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyautogui_flowjson-0.0.8.tar.gz (2.3 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyautogui_flowjson-0.0.8-py3-none-any.whl (14.3 kB view details)

Uploaded Python 3

File details

Details for the file pyautogui_flowjson-0.0.8.tar.gz.

File metadata

  • Download URL: pyautogui_flowjson-0.0.8.tar.gz
  • Upload date:
  • Size: 2.3 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.6.14

File hashes

Hashes for pyautogui_flowjson-0.0.8.tar.gz
Algorithm Hash digest
SHA256 426e1b67072eb4f35e9c534a889202adb2c6ebbd2f9da0a8d4faffb66aaf8d30
MD5 59cc8dc3898c935da692c12280efb1e0
BLAKE2b-256 56be2a323f12ec9f2453ce6efeba746a6c5783bd30e442512855dc091f23a626

See more details on using hashes here.

File details

Details for the file pyautogui_flowjson-0.0.8-py3-none-any.whl.

File metadata

File hashes

Hashes for pyautogui_flowjson-0.0.8-py3-none-any.whl
Algorithm Hash digest
SHA256 f608e0c2b7b5b038ac8728b1913773a7c0995fb108db8b434f024588e8d6bc3d
MD5 a8fdf085dd8a46d3d80cd7c461d5ae37
BLAKE2b-256 daa9c2f97624b321160207930bb54a135b524f9877add709b4ce11bec63e65fd

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page