mcpField
N
Nocticas

Nocticas

远程服务
nocticas.com开发工具019 周前更新

关于 Nocticas

Nocticas E2E Gate 是一个 GitHub Action,可对目标 URL 运行固定的浏览器测试流程,并在结果未验证或失败时让 CI 失败。团队可将确定性测试文件纳入代码库,并据此阻止拉取请求或合并。

主要功能

  1. 01运行固定的浏览器测试流程
  2. 02在 CI 中测试目标 URL
  3. 03将测试结果映射为任务退出码
  4. 04遇到错误或超时则使构建失败
  5. 05将测试步骤纳入版本控制

适用场景

  1. 01通过浏览器检查拦截拉取请求
  2. 02每次推送时测试预览部署
  3. 03在 CI 中执行可重复的端到端检查
  4. 04按文档方案接入其他 CI 系统

配置

远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。

服务地址https://app.nocticas.com/api/mcp
一键复制安装命令
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。

全部服务地址
Streamable HTTPhttps://app.nocticas.com/api/mcp需要授权

工具

详细介绍

Nocticas E2E 门禁 — GitHub Action

每次推送或 PR 时,针对目标 URL 运行固定的 Nocticas 门禁,并在判定为红色时使构建失败。浏览器运行在 Nocticas 的服务器上——此 Action 是一个轻量客户端,用于启动运行、轮询判定结果,并将其映射为退出代码。杜绝假绿:运行框架出错绝不会被视为通过。

快速开始

  1. 在 Nocticas 中创建并固定流程(运行 Agent → 固定 → 将确定性步骤脚本导出为 JSON)。
  2. 将门禁文件提交到仓库,例如 .nocticas/checkout-flow.json。
  3. 将密钥添加为仓库 Secret:NOCTICAS_API_KEY。
  4. 添加工作流:
# .github/workflows/nocticas.yml
name: Nocticas E2E gate
on: [pull_request, workflow_dispatch]
jobs:
  verify:
    runs-on: ubuntu-latest          # standard runner = free on public repos
    steps:
      - uses: actions/checkout@v4   # so the gate file is available
      - uses: Low-Latency-Labs/nocticas-action@v1
        with:
          api-key: ${{ secrets.NOCTICAS_API_KEY }}
          gate: .nocticas/checkout-flow.json
          target: ${{ vars.PREVIEW_URL }}   # your deployed preview/staging URL

判定为红色会使任务失败 → 阻止 PR 合并。

输入

输入必填默认值说明
api-key是—Nocticas API 密钥(请将其存储为 Secret)。
gate是—仓库中固定门禁 JSON(确定性步骤数组)的路径。
target是—要测试的 URL(例如 PR 的预览部署)。
api-base否https://app.nocticas.com/apiNocticas API 基础地址。
timeout-seconds否300等待判定结果的最长时间。
poll-seconds否3轮询间隔。
fail-on-error否true将运行框架的 error(而非测试失败)视为构建失败。未经验证的运行绝不会被视为通过。

输出

输出说明
run-idNocticas 运行 ID(可在日志中附上链接)。
verdictpassed | failed | error | timeout。

门禁文件

一个由确定性步骤组成的 JSON 数组——正是 Nocticas 在你固定一次通过的运行时生成的内容。示例见 examples/gate.example.json。将它保存在仓库中,就能让 E2E 测试与其所保护的代码一同进行版本控制。

**请勿提交真实凭据。**将门禁指向暂存或预览环境,并使用专用测试账户;Nocticas 内置的测试收件箱可处理 OTP/魔法链接登录,因此你无需将密钥嵌入门禁文件。

费用

  • **发布此 Action:**免费(公开仓库,无需付费计划)。
  • **运行此 Action(你的客户):**在公开仓库中使用标准运行器免费;在私有仓库中则计入每月免费分钟额度。它只有一个轻量任务,仅占用数秒运行器时间。
  • 浏览器运行:使用 Nocticas 积分计费——而且确定性/固定运行在每月额度内免费,因此每次推送都运行门禁通常不会消耗积分。

其他 CI 系统(实现方案)

不使用 GitHub?同样的“启动 → 轮询 → 退出”逻辑可以用可移植脚本实现——请参见 recipe.sh 和 examples/gitlab-ci.example.yml。交互约定就是通过 HTTP 传输 JSON:

POST {api-base}/runs   { "mode":"deterministic", "target": "...", "script": [ ...gate... ] }   → { "id": "..." }
GET  {api-base}/runs/{id}                                                                       → { "status": "passed|failed|error|..." }

请求头:x-nocticas-key: <key>。除非 status == "passed",否则以非零状态退出。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。