Argus 如何工作

Argus 不是一个装作很私密的程序。它是两个,中间隔着一道有意砌起来的墙——本页就是这两侧各自做什么的参考。

本页内容

两个进程,一道边界

大多数多环境浏览器工具都犯同一个错误:它们把管理层的状态——你的账号、代理池、存下来的 Cookie——和浏览会话放在同一个进程里。那是风险,不是功能。Argus 是有意把两者分开的。

控制平面

Argus Launcher

你登录的那个桌面应用。你的账号、代理、Cookie 集、扩展和数据集都归它所有,而浏览器会话被允许看到什么,也由它决定。

数据平面

Argus Browser

一个专门构建的 Chromium。它只收到一份启动参数,打开一个会话,此外一无所知——它从不登录,也从不接触你的账号或其他环境。

浏览器所知道的一切,都是启动时以命令行参数的形式送进去的;除此之外,什么都不会越过这道边界:

--argus-profile-launch
--argus-profile-id
--argus-profile-name
--argus-profile-icon
--argus-fingerprint-json
--argus-proxy-type / --argus-proxy-host / --argus-proxy-port
--argus-proxy-user / --argus-proxy-pass
--user-data-dir
--load-extension
--argus-panel-extension-id

浏览器没有可以拿去登录的凭据,没有你其他环境的名单,也没有任何办法碰到你所在组织的数据。就算明天有站点攻破了一个会话,墙的另一侧也没有什么可供它找到。

编辑文件夹对话框:名称输入框、图标和颜色选择器,以及一行说明——文件夹只整理启动器里的环境,浏览器会话依旧各自独立。
文件夹是启动器这一侧的事:它整理环境列表,而这些环境所指向的浏览器会话仍然彼此分开。

启动器

你登录的那个桌面应用。你的账号、代理、Cookie 集、扩展和数据集都归它所有,而浏览器会话被允许看到什么,也由它决定。

环境

数百个彼此完全隔离的环境,每一个都有自己的存储、Cookie 和身份。

  • 创建、打标签、归入文件夹
  • 在整份列表上批量启动、批量编辑、批量删除
  • 搜索、筛选与分页——为一屏装不下的列表而做
  • 自定义状态标签,以及逐个环境的备注
  • CSV 导入与导出
  • 删除是软删除:环境进回收站,随时可以还原
Argus 启动器里的环境表格:十五个环境按文件夹分组,每一行都带着状态、代理检查的延迟、标签标记和自己的启动按钮。另有十列藏在列设置控件后面。
每个环境就是一行,点一下就能启动。文件夹、状态、代理检查延迟和标签都在表里,另外十列也只差一次点击。

代理

一个可搜索的共享代理库,带实时可用性检查——而不是每个环境里放一个文本框。

  • HTTP 与 SOCKS5,包括需要用户名和密码的 SOCKS5
  • 检查会报出出口 IP、国家和延迟
  • 新代理和出问题的代理会自动检查,而且是并发进行,不是一个一个排队
  • 任何代理也都可以随时手动重新检查
  • 没通过检查的代理会拦下启动,而不是把你的真实 IP 放出去
  • 检查还会标出落在机房网络上的出口,并指出它背后的服务商
  • 一轮更慢的后台巡检会通过每个代理去打开真实站点,于是某一行能说出是哪个站点拒绝了它——而用哪些站点、其中哪些严格到足以拦下启动,由你的工作区自己定
  • 记下代理到期的日子,提前一周就会收到提醒;真要用已经过期的代理启动,还会再问你一次
  • CSV 批量导入

代理如何工作,以及去哪里买

Cookie 集

一套 Cookie 只上传一次,之后指派给任何需要它的环境。

  • 共享库:同一套 Cookie 在环境之间调换,不必重新上传
  • 从单个文件导入,或一次导入整个文件夹
  • Cookie 在启动时就写进会话,所以环境打开时已经是登录状态

指纹

每个环境自动生成一套硬件身份,各项之间彼此协调,不会互相矛盾。

  • Windows、macOS 和 Linux 预设,user-agent 与 UA-CH 元数据同步生成、彼此吻合
  • 平台、CPU 核心数、内存、屏幕、时区和语言作为一个自洽的整体一起生成
  • 每个环境都有自己的编辑器,用来把你想亲手钉住的那几项定下来
  • 一键重掷生成新的身份,同时保留你的配置

浏览器指纹是怎么回事

新建环境对话框:代理模式选在「指定代理」,旁边还有「直连」和「免费代理」;指纹被概括成一行「Windows 11、WebRTC 仅走代理、Canvas 噪声」,右侧是这个环境保存后长什么样的实时预览。
一个对话框同时定下代理模式——指定、直连或免费——和指纹。右栏在你按下保存之前,就把将要存下的东西原样摆出来。

扩展

一个扩展为整个团队装一次;每一台需要它的机器都会自动落地。

  • 用 Chrome Web Store 的 ID 添加,或从本地已解压的文件夹添加
  • 给共享扩展起一个团队一看就懂的显示名
  • 一次指派给选中的多个环境,而不是一个一个来
  • 内置四个:Argus Helper、FoxyWall Proxy、SMS Activate,以及一个可选的验证码插件

每次安装都会带上四个内置扩展。它们的开关归组织所有,而不是归你个人——关掉一个,整个团队的环境里就都关掉了。

Argus Helper

每个环境窗口里的侧边栏:代理状态、Cookie,以及本次启动的自动化流程。

把它关掉,整块面板就没了——本次会话的出口、时区和设备检查、Cookie 同步,以及自动化流程的执行器。它还会在环境第一次启动时,把指派给它的那套 Cookie 一次性写进去。

SMS Activate

买一个用来收验证码的手机号,这样环境注册时永远不必用你自己的号码。

需要你自己在 onlinesim.io 申请的 API 密钥。号码是一次性的:一个号码,一次验证。下一个账号请再买一个。

FoxyWall Proxy

免费代理的后端,随每个环境一起打包。

只有设为免费代理模式的环境才会自动连上它。这个开关则让它干脆不再被打包进去。

Captcha Plugin

在浏览器内部用 CPU 直接识别 reCAPTCHA。不需要账号,也不按次收费。

在你打开它之前一直是关着的:模型约 56 MB,每台机器只下载一次,由所有环境共用。

扩展标签页:已装六个,其中四个随包附带的扩展标着「已包含」并各有开关,两个来自 Chrome Web Store,一个「从链接或文件夹添加」的按钮,以及一行说明——随包扩展对整个团队生效。
随包扩展是整个组织范围的:关掉一个,整个团队都关掉了。你自己的扩展则来自一条链接或一个文件夹。

「发现」视图里还有另外十二个来自 Chrome Web Store 的扩展,被归成四组。没有列出来的照样能装:粘贴任意一条 Web Store 链接,或者添加你自己的一个已解压文件夹。

验证码与自动化

Captcha Solver: Auto Recognition and Bypass把验证码交给 2Captcha 服务,再把答案填回去。
Buster: Captcha Solver for Humans一键解决 reCAPTCHA 的语音挑战。
Tampermonkey在任意页面上运行你自己的用户脚本。
Selenium IDE不用写代码,录制并回放一段浏览器操作流程。

Cookie 与身份

Cookie-Editor在工具栏里读取、编辑和删除某个站点的 Cookie。
Session Buddy把一个窗口打开的标签页存成有名字的会话,之后再还原回来。
User-Agent Switcher for Chrome按站点覆盖 UA 字符串。而环境的指纹又会把它覆盖回来。

代理与网络

Proxy SwitchyOmega按站点设置代理规则,叠在环境自己的代理之上。
ClearURLs把你点开的每条链接里的跟踪参数都剥掉。

隐私与拦截

uBlock Origin Lite内容拦截器。用的是 MV3 版本,因为 MV2 的 uBlock 已经下架。
Privacy Badger一边浏览一边学习,并拦截跟踪器。
Dark Reader为任何网站生成一套暗色主题。
已启动环境里 Chrome 自带的扩展弹出面板,列着 Argus Cookie Manager、Cookie-Editor、FoxyWall Proxy 和 SMS Activate。
在已启动的环境里,它们就是普通的 Chrome 扩展——浏览器自带的弹出面板把它们和别的扩展一并列出来。

云同步与团队

登录一次,工作区就跟着你走;团队共用一个池子,不必再互相传文件。

  • 一个账号,用邮箱和密码登录,在你用的每一台机器上都是它
  • 环境、代理、Cookie 集、文件夹、状态和书签都同步到你的组织
  • 组织成员共用上面这一切的同一个池子
  • 每次写入只落在一行上,所以两个人同时干活也不会覆盖掉对方
  • 套餐额度在数据库里强制执行,而不只是在界面上

日程

一份把流程排好顺序的日历:若干条自动化流程、它们运行的环境,以及一个时间。

  • 一条日程里的自动化流程一次只跑一条,所以采集能把结果行交给随后汇报它们的那一步
  • 在某一天跑一次、每天跑,或按你挑的星期几跑——还可以给重复加上起止日期
  • 只有启动器开着时日程才会触发;它关着时错过的时段会被标为错过并跳过,绝不事后补跑
  • 「保持唤醒」会请 macOS 在启动器运行期间不要闲置休眠,通宵的日历正是靠它才成立——合上盖子照样会睡
  • 同一个工作区里的两台机器不会把同一个时段跑两遍:先到的那台把它认领走,另一台让开
  • 每个日期格子上都带着结果:待运行、运行中、已完成、部分失败、失败或错过

数据集

归工作区所有的表格,自动化流程往里写,也从里面读回来。

  • 列名和列类型由你来定:文本、数字、复选框、日期、单选、标签、URL、邮箱、电话等等
  • 存在工作区里而不是某一台机器上,所以同事打开的就是你打开的那张表
  • 自动化流程的 save rows 与 load rows 两个步骤,写下今天的结果,读出明天的工作清单
  • 导入 CSV、JSON、TXT 或 XLSX:既可以照文件自己的表头新建一个数据集,也可以追加进已有的
  • 在表格里直接编辑、筛选、排序、冻结首列,并把整张表导出为 CSV 或 JSON
  • 列表变长了就用文件夹,删掉的数据集会在回收站里等着

采集器

预置的采集器,完全不打开浏览器窗口,就能把一张表填满。

  • 二十张卡片,覆盖地点、社交、电商和招聘网站——填个表单,就得到一张有类型的表
  • 不用浏览器:请求走的是普通 HTTP,却带着真实浏览器的 TLS 指纹,所以一次 Maps 搜索是几秒而不是几分钟
  • 不占用套餐的自动化流程额度,任何一档都是如此,Free 也一样
  • 走环境自己的代理,每一行都记着它是怎么采到的
  • 默认每跑一次建一张新表;由流程驱动时,也可以追加进你指定的那一张
  • 从标签页、助手、本地 API,以及自动化流程里的 Run scraper 步骤都能用

项目

一件有名字的工作,加上各个标签页里为它服务的所有东西——聚到一处,却没有被搬走。

  • 把环境、代理、Cookie 集、自动化流程、数据集和日程条目归到同一个客户、同一场投放或同一次实验之下
  • 归属是一条链接而不是一次搬家:没有任何东西离开自己的文件夹,删掉项目,里面的一切照常工作
  • 在任何标签页上选中一个项目,这个标签页就只剩它的东西
  • 同一个共享代理可以同时服务好几个项目,这是文件夹表达不了的
  • 按项目设定助手的自主程度,指名它在这里永远不许调用的工具,并圈定它可以改动东西的时段
  • 这些限制由应用自己的代码在工具执行前检查,而不是拜托模型自觉遵守
  • 每个项目在这台机器上保有自己的说明、规则、笔记和操作手册,未经你批准不会往里写任何东西

助手

Ask AI 就开在你当前所在的标签页旁边,用的是和你一样的那套工具。

  • 它知道你在哪个界面上,答案出自内置在应用里的文档
  • 它会动手,而不只是给建议——检查代理、整理数据集、写一条自动化流程
  • 任何破坏性或批量的动作,落地之前都会先弹出一张确认卡片
  • 让它搭一条自动化流程,编辑器就会打开,你的要求已经递到它的构建器手里
  • 它调用过的每一个工具都列在答案上方,你能看清它是怎么走到这一步的

技能与你自己的密钥

助手为一项工作载入的说明书,以及所有 AI 功能开口时用的 API 密钥。

  • 内置技能共22个,每一个都是一份说明书,外加它为这项工作打开的那组工具
  • 改动一个内置技能,你的版本会覆盖上去,存在这台机器上,永远不会被上传
  • 把你手头已有的文件传上来,它就变成你自己的一个技能
  • 每一项 AI 功能都跑在你自带的密钥上——不经过任何别人的账号
  • 服务商连接一次,就同时供助手和每一个 AI 自动化步骤使用
  • 本地的和小众的服务商可以通过连接器继续用,所以跑在你自己机器上的模型根本不需要密钥

本地自动化 API

一座本地 HTTP 桥,让你自己的工具去驱动这个应用——在你的机器上而不是我们的,任何套餐都有,Free 也不例外。

  • 端点共131个,覆盖环境、代理、Cookie、自动化流程、日程、连接器、项目、邮件和技能
  • 创建、读取和修改环境,给它指派代理,更新它的指纹,并启动一个会话
  • 编写和运行自动化流程,并读回每一次运行都做了什么
  • 带作用域的 API 密钥,可以创建、列出和吊销,每一把都只限于你指定的那些文件夹
  • 配成 MCP 集成,让 Agent 直接驱动它
  • 新客户端发来的请求,会先在应用里弹出允许或拒绝的提示
  • 任何套餐都能用,Free 也一样——套餐决定的是环境数、席位数和自动化流程数,不是 API 访问权

更新

启动器会把自己和浏览器都保持在最新,你不用去追一个下载页面。

  • 更新检查在后台进行,下载自动完成
  • 什么时候重启并应用,由你决定
  • 浏览器内核按需下载安装——没有第二个安装程序要跑

浏览器

一个专门构建的 Chromium。它只收到一份启动参数,打开一个会话,此外一无所知——它从不登录,也从不接触你的账号或其他环境。

真正能用的带认证 SOCKS5

Argus 之所以自带浏览器而不是去自动化别人的,这是最明白的一条理由。

  • Chromium 自己的 SOCKS5 客户端只会说免认证的那一种,所以需要用户名和密码的代理根本用不了
  • Argus 会起一个本地中继,在上游那一段完成 RFC 1929 握手
  • 环境指向的是一个回环地址,因此代理认证对话框永远不会冒出来
  • 这不是叠在上面的权宜之计——它就住在浏览器进程内部

在渲染进程里改写指纹

身份是在页面之下施加的,脚本绕不到它后面去读。

  • Canvas、WebGL(包括对外报告的 vendor 和 renderer)以及音频
  • 平台、语言、时区、屏幕、设备内存和 CPU 核心数
  • 每一项都工作在四种模式之一:真实、噪声、关闭或手动
  • 脚本看到的是改写后的值,因为那里就只有这一个值,而不是因为有层包装把真值藏了起来

为什么是渲染进程,而不是一层 JavaScript 包装

WebRTC 泄露防护

你的真实地址不会经 WebRTC 溜出去,页面也关不掉这一点。

  • 以浏览器策略的形式作用在环境上,位于 JavaScript 层之下
  • 对每一个环境都生效——它不是一个你可能忘记打开的开关
  • 给一个仍在报告真实地址的环境指派代理,它会被自动纠正过来

真正的环境隔离

每个会话都从自己的目录起步,别的会话里的东西一样都不会带过来。

  • 每个环境一个专属的用户数据目录——存储、缓存和 Cookie 存储各自独立
  • 会话恢复被关掉了,上一次运行不会在新的一次里冒出来
  • 代理施加在网络层,而不是通过一个页面能察觉到的扩展
  • 默认的拦截名单盖住了那些站点用来识别自动化的远程访问端口

真正让两个账号互不相干的是什么

已签名并已公证

macOS 版本由 SIMNETIQ LTD 签名、经 Apple 公证,并已把公证票据装订进包内。

  • 打开时没有 Gatekeeper 警告,也不用右键打开那一套绕法
  • 已启用强化运行时(hardened runtime)
  • macOS 版本面向 Apple Silicon,Windows 版本为 x64

试一下

下载启动器,它会在首次运行时自己把浏览器取回来。

macOS(Apple Silicon,已签名并公证) · Windows 10/11(x64) · v1.0.82