webpilot-cli 0.1.2__tar.gz → 0.1.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- webpilot_cli-0.1.3/PKG-INFO +84 -0
- webpilot_cli-0.1.3/README.md +72 -0
- {webpilot_cli-0.1.2 → webpilot_cli-0.1.3}/py/webpilot_cli/__init__.py +1 -1
- webpilot_cli-0.1.3/py/webpilot_cli.egg-info/PKG-INFO +84 -0
- {webpilot_cli-0.1.2 → webpilot_cli-0.1.3}/pyproject.toml +3 -1
- webpilot_cli-0.1.2/PKG-INFO +0 -87
- webpilot_cli-0.1.2/README.md +0 -75
- webpilot_cli-0.1.2/py/webpilot_cli.egg-info/PKG-INFO +0 -87
- {webpilot_cli-0.1.2 → webpilot_cli-0.1.3}/py/webpilot_cli/__main__.py +0 -0
- {webpilot_cli-0.1.2 → webpilot_cli-0.1.3}/py/webpilot_cli/launcher.py +0 -0
- {webpilot_cli-0.1.2 → webpilot_cli-0.1.3}/py/webpilot_cli.egg-info/SOURCES.txt +0 -0
- {webpilot_cli-0.1.2 → webpilot_cli-0.1.3}/py/webpilot_cli.egg-info/dependency_links.txt +0 -0
- {webpilot_cli-0.1.2 → webpilot_cli-0.1.3}/py/webpilot_cli.egg-info/entry_points.txt +0 -0
- {webpilot_cli-0.1.2 → webpilot_cli-0.1.3}/py/webpilot_cli.egg-info/requires.txt +0 -0
- {webpilot_cli-0.1.2 → webpilot_cli-0.1.3}/py/webpilot_cli.egg-info/top_level.txt +0 -0
- {webpilot_cli-0.1.2 → webpilot_cli-0.1.3}/setup.cfg +0 -0
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: webpilot-cli
|
|
3
|
+
Version: 0.1.3
|
|
4
|
+
Summary: pip launcher for the WebPilot browser agent (npm package: @capagents/webpilot)
|
|
5
|
+
Author: CLI-Agents
|
|
6
|
+
License: MIT
|
|
7
|
+
Keywords: webpilot,browser,agent,cli,opentui
|
|
8
|
+
Requires-Python: >=3.9
|
|
9
|
+
Description-Content-Type: text/markdown
|
|
10
|
+
Provides-Extra: dev
|
|
11
|
+
Requires-Dist: pytest>=8.0; extra == "dev"
|
|
12
|
+
|
|
13
|
+
# WebPilot
|
|
14
|
+
|
|
15
|
+
Browser agent CLI. Type a goal; [browser-use](https://github.com/browser-use/browser-use) 0.13.10 drives Chrome, then WebPilot writes a replayable Playwright spec.
|
|
16
|
+
|
|
17
|
+
The engine is the browser-use service from test-agent-nexus, copied into this package (`py/webpilot_engine`). It keeps the nexus behaviour: error-recovery system prompt, fast-mode agent tuning, Chrome launch flags, the search/select loop breaker, the 600 s run timeout, `browser-use-v2-compact` workflow YAML with semantic locators, and the Playwright codegen. There is no dependency on test-agent-nexus, FastAPI, or a database.
|
|
18
|
+
|
|
19
|
+
The shell is [OpenTUI](https://opentui.com). Headless `run` is for CI. See [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) and [HOW_TO_USE.md](HOW_TO_USE.md).
|
|
20
|
+
|
|
21
|
+
## Install
|
|
22
|
+
|
|
23
|
+
OpenTUI needs **Bun 1.3+**. Node cannot load the native renderer. Live runs also need **uv** or **Python 3.11+** for the browser-use engine.
|
|
24
|
+
|
|
25
|
+
The CLI is published on **npm** as `@capagents/webpilot`. **PyPI** package `webpilot-cli` is a pip launcher for the same `webpilot` command.
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
curl -fsSL https://bun.sh/install | bash
|
|
29
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh # recommended for the engine
|
|
30
|
+
|
|
31
|
+
npm install -g @capagents/webpilot
|
|
32
|
+
# or
|
|
33
|
+
pip install webpilot-cli
|
|
34
|
+
|
|
35
|
+
webpilot setup # optional: the first live run does this too
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
`webpilot setup` creates `~/.webpilot/engine/.venv` with browser-use 0.13.10. It uses installed Google Chrome, or installs Chromium when Chrome is missing. `WEBPILOT_PYTHON` points WebPilot at an existing Python that already has browser-use.
|
|
39
|
+
|
|
40
|
+
From this repo:
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
cd WebPilot
|
|
44
|
+
bun install
|
|
45
|
+
bun src/index.ts init
|
|
46
|
+
bun src/index.ts start
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
One-shot release (same version on both registries; assumes `npm` and `twine` are already logged in):
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
./scripts/publish.sh # current version
|
|
53
|
+
./scripts/publish.sh 0.2.0 # bump + publish
|
|
54
|
+
./scripts/publish.sh --dry-run # pack only
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Configure
|
|
58
|
+
|
|
59
|
+
`init` writes:
|
|
60
|
+
|
|
61
|
+
| File | Purpose |
|
|
62
|
+
|------|---------|
|
|
63
|
+
| `webpilot.yaml` | Browser, prompts, export, active profile |
|
|
64
|
+
| `llms.json` | Named LLM profiles (azure, openai, ollama, openai_compatible, mock) |
|
|
65
|
+
| `.env.example` | API key names |
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
webpilot models
|
|
69
|
+
webpilot run --goal "Read the homepage" --url https://example.com --profile mock --plain
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
`mock` is an offline demo on a synthetic page: no engine, browser, or model. Pick a live profile (Tab in the shell, or `llm.active`) for a real run.
|
|
73
|
+
|
|
74
|
+
## CLI
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
webpilot start
|
|
78
|
+
webpilot start -g "Go to booking.com and search hotels in Mumbai" -p azure-gpt4o
|
|
79
|
+
|
|
80
|
+
webpilot run --goal "Get a quote" --url https://example.com --profile azure-gpt4o --headed
|
|
81
|
+
webpilot run --goal "..." --url https://example.com --profile mock --plain --out ./out/demo
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Inside the shell: `/url`, `/goal`, `/run`, `/stop`, `/headed`, `/steps`, `/profile`, `/export`, `/exit`. A line without a slash is the goal and starts the run; the agent chooses which site to open. `/url` only pins a start page.
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
# WebPilot
|
|
2
|
+
|
|
3
|
+
Browser agent CLI. Type a goal; [browser-use](https://github.com/browser-use/browser-use) 0.13.10 drives Chrome, then WebPilot writes a replayable Playwright spec.
|
|
4
|
+
|
|
5
|
+
The engine is the browser-use service from test-agent-nexus, copied into this package (`py/webpilot_engine`). It keeps the nexus behaviour: error-recovery system prompt, fast-mode agent tuning, Chrome launch flags, the search/select loop breaker, the 600 s run timeout, `browser-use-v2-compact` workflow YAML with semantic locators, and the Playwright codegen. There is no dependency on test-agent-nexus, FastAPI, or a database.
|
|
6
|
+
|
|
7
|
+
The shell is [OpenTUI](https://opentui.com). Headless `run` is for CI. See [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) and [HOW_TO_USE.md](HOW_TO_USE.md).
|
|
8
|
+
|
|
9
|
+
## Install
|
|
10
|
+
|
|
11
|
+
OpenTUI needs **Bun 1.3+**. Node cannot load the native renderer. Live runs also need **uv** or **Python 3.11+** for the browser-use engine.
|
|
12
|
+
|
|
13
|
+
The CLI is published on **npm** as `@capagents/webpilot`. **PyPI** package `webpilot-cli` is a pip launcher for the same `webpilot` command.
|
|
14
|
+
|
|
15
|
+
```bash
|
|
16
|
+
curl -fsSL https://bun.sh/install | bash
|
|
17
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh # recommended for the engine
|
|
18
|
+
|
|
19
|
+
npm install -g @capagents/webpilot
|
|
20
|
+
# or
|
|
21
|
+
pip install webpilot-cli
|
|
22
|
+
|
|
23
|
+
webpilot setup # optional: the first live run does this too
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
`webpilot setup` creates `~/.webpilot/engine/.venv` with browser-use 0.13.10. It uses installed Google Chrome, or installs Chromium when Chrome is missing. `WEBPILOT_PYTHON` points WebPilot at an existing Python that already has browser-use.
|
|
27
|
+
|
|
28
|
+
From this repo:
|
|
29
|
+
|
|
30
|
+
```bash
|
|
31
|
+
cd WebPilot
|
|
32
|
+
bun install
|
|
33
|
+
bun src/index.ts init
|
|
34
|
+
bun src/index.ts start
|
|
35
|
+
```
|
|
36
|
+
|
|
37
|
+
One-shot release (same version on both registries; assumes `npm` and `twine` are already logged in):
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
./scripts/publish.sh # current version
|
|
41
|
+
./scripts/publish.sh 0.2.0 # bump + publish
|
|
42
|
+
./scripts/publish.sh --dry-run # pack only
|
|
43
|
+
```
|
|
44
|
+
|
|
45
|
+
## Configure
|
|
46
|
+
|
|
47
|
+
`init` writes:
|
|
48
|
+
|
|
49
|
+
| File | Purpose |
|
|
50
|
+
|------|---------|
|
|
51
|
+
| `webpilot.yaml` | Browser, prompts, export, active profile |
|
|
52
|
+
| `llms.json` | Named LLM profiles (azure, openai, ollama, openai_compatible, mock) |
|
|
53
|
+
| `.env.example` | API key names |
|
|
54
|
+
|
|
55
|
+
```bash
|
|
56
|
+
webpilot models
|
|
57
|
+
webpilot run --goal "Read the homepage" --url https://example.com --profile mock --plain
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
`mock` is an offline demo on a synthetic page: no engine, browser, or model. Pick a live profile (Tab in the shell, or `llm.active`) for a real run.
|
|
61
|
+
|
|
62
|
+
## CLI
|
|
63
|
+
|
|
64
|
+
```bash
|
|
65
|
+
webpilot start
|
|
66
|
+
webpilot start -g "Go to booking.com and search hotels in Mumbai" -p azure-gpt4o
|
|
67
|
+
|
|
68
|
+
webpilot run --goal "Get a quote" --url https://example.com --profile azure-gpt4o --headed
|
|
69
|
+
webpilot run --goal "..." --url https://example.com --profile mock --plain --out ./out/demo
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
Inside the shell: `/url`, `/goal`, `/run`, `/stop`, `/headed`, `/steps`, `/profile`, `/export`, `/exit`. A line without a slash is the goal and starts the run; the agent chooses which site to open. `/url` only pins a start page.
|
|
@@ -0,0 +1,84 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: webpilot-cli
|
|
3
|
+
Version: 0.1.3
|
|
4
|
+
Summary: pip launcher for the WebPilot browser agent (npm package: @capagents/webpilot)
|
|
5
|
+
Author: CLI-Agents
|
|
6
|
+
License: MIT
|
|
7
|
+
Keywords: webpilot,browser,agent,cli,opentui
|
|
8
|
+
Requires-Python: >=3.9
|
|
9
|
+
Description-Content-Type: text/markdown
|
|
10
|
+
Provides-Extra: dev
|
|
11
|
+
Requires-Dist: pytest>=8.0; extra == "dev"
|
|
12
|
+
|
|
13
|
+
# WebPilot
|
|
14
|
+
|
|
15
|
+
Browser agent CLI. Type a goal; [browser-use](https://github.com/browser-use/browser-use) 0.13.10 drives Chrome, then WebPilot writes a replayable Playwright spec.
|
|
16
|
+
|
|
17
|
+
The engine is the browser-use service from test-agent-nexus, copied into this package (`py/webpilot_engine`). It keeps the nexus behaviour: error-recovery system prompt, fast-mode agent tuning, Chrome launch flags, the search/select loop breaker, the 600 s run timeout, `browser-use-v2-compact` workflow YAML with semantic locators, and the Playwright codegen. There is no dependency on test-agent-nexus, FastAPI, or a database.
|
|
18
|
+
|
|
19
|
+
The shell is [OpenTUI](https://opentui.com). Headless `run` is for CI. See [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) and [HOW_TO_USE.md](HOW_TO_USE.md).
|
|
20
|
+
|
|
21
|
+
## Install
|
|
22
|
+
|
|
23
|
+
OpenTUI needs **Bun 1.3+**. Node cannot load the native renderer. Live runs also need **uv** or **Python 3.11+** for the browser-use engine.
|
|
24
|
+
|
|
25
|
+
The CLI is published on **npm** as `@capagents/webpilot`. **PyPI** package `webpilot-cli` is a pip launcher for the same `webpilot` command.
|
|
26
|
+
|
|
27
|
+
```bash
|
|
28
|
+
curl -fsSL https://bun.sh/install | bash
|
|
29
|
+
curl -LsSf https://astral.sh/uv/install.sh | sh # recommended for the engine
|
|
30
|
+
|
|
31
|
+
npm install -g @capagents/webpilot
|
|
32
|
+
# or
|
|
33
|
+
pip install webpilot-cli
|
|
34
|
+
|
|
35
|
+
webpilot setup # optional: the first live run does this too
|
|
36
|
+
```
|
|
37
|
+
|
|
38
|
+
`webpilot setup` creates `~/.webpilot/engine/.venv` with browser-use 0.13.10. It uses installed Google Chrome, or installs Chromium when Chrome is missing. `WEBPILOT_PYTHON` points WebPilot at an existing Python that already has browser-use.
|
|
39
|
+
|
|
40
|
+
From this repo:
|
|
41
|
+
|
|
42
|
+
```bash
|
|
43
|
+
cd WebPilot
|
|
44
|
+
bun install
|
|
45
|
+
bun src/index.ts init
|
|
46
|
+
bun src/index.ts start
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
One-shot release (same version on both registries; assumes `npm` and `twine` are already logged in):
|
|
50
|
+
|
|
51
|
+
```bash
|
|
52
|
+
./scripts/publish.sh # current version
|
|
53
|
+
./scripts/publish.sh 0.2.0 # bump + publish
|
|
54
|
+
./scripts/publish.sh --dry-run # pack only
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
## Configure
|
|
58
|
+
|
|
59
|
+
`init` writes:
|
|
60
|
+
|
|
61
|
+
| File | Purpose |
|
|
62
|
+
|------|---------|
|
|
63
|
+
| `webpilot.yaml` | Browser, prompts, export, active profile |
|
|
64
|
+
| `llms.json` | Named LLM profiles (azure, openai, ollama, openai_compatible, mock) |
|
|
65
|
+
| `.env.example` | API key names |
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
webpilot models
|
|
69
|
+
webpilot run --goal "Read the homepage" --url https://example.com --profile mock --plain
|
|
70
|
+
```
|
|
71
|
+
|
|
72
|
+
`mock` is an offline demo on a synthetic page: no engine, browser, or model. Pick a live profile (Tab in the shell, or `llm.active`) for a real run.
|
|
73
|
+
|
|
74
|
+
## CLI
|
|
75
|
+
|
|
76
|
+
```bash
|
|
77
|
+
webpilot start
|
|
78
|
+
webpilot start -g "Go to booking.com and search hotels in Mumbai" -p azure-gpt4o
|
|
79
|
+
|
|
80
|
+
webpilot run --goal "Get a quote" --url https://example.com --profile azure-gpt4o --headed
|
|
81
|
+
webpilot run --goal "..." --url https://example.com --profile mock --plain --out ./out/demo
|
|
82
|
+
```
|
|
83
|
+
|
|
84
|
+
Inside the shell: `/url`, `/goal`, `/run`, `/stop`, `/headed`, `/steps`, `/profile`, `/export`, `/exit`. A line without a slash is the goal and starts the run; the agent chooses which site to open. `/url` only pins a start page.
|
|
@@ -4,7 +4,7 @@ build-backend = "setuptools.build_meta"
|
|
|
4
4
|
|
|
5
5
|
[project]
|
|
6
6
|
name = "webpilot-cli"
|
|
7
|
-
version = "0.1.
|
|
7
|
+
version = "0.1.3"
|
|
8
8
|
description = "pip launcher for the WebPilot browser agent (npm package: @capagents/webpilot)"
|
|
9
9
|
readme = "README.md"
|
|
10
10
|
requires-python = ">=3.9"
|
|
@@ -21,6 +21,8 @@ webpilot = "webpilot_cli.launcher:main"
|
|
|
21
21
|
|
|
22
22
|
[tool.setuptools.packages.find]
|
|
23
23
|
where = ["py"]
|
|
24
|
+
# The browser-use engine ships in the npm package; the wheel is only the launcher.
|
|
25
|
+
include = ["webpilot_cli*"]
|
|
24
26
|
|
|
25
27
|
[tool.pytest.ini_options]
|
|
26
28
|
testpaths = ["tests/python"]
|
webpilot_cli-0.1.2/PKG-INFO
DELETED
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: webpilot-cli
|
|
3
|
-
Version: 0.1.2
|
|
4
|
-
Summary: pip launcher for the WebPilot browser agent (npm package: @capagents/webpilot)
|
|
5
|
-
Author: CLI-Agents
|
|
6
|
-
License: MIT
|
|
7
|
-
Keywords: webpilot,browser,agent,cli,opentui
|
|
8
|
-
Requires-Python: >=3.9
|
|
9
|
-
Description-Content-Type: text/markdown
|
|
10
|
-
Provides-Extra: dev
|
|
11
|
-
Requires-Dist: pytest>=8.0; extra == "dev"
|
|
12
|
-
|
|
13
|
-
# WebPilot
|
|
14
|
-
|
|
15
|
-
Self-contained browser agent: OODA loop (observe → orient → decide → act) → Playwright spec.
|
|
16
|
-
|
|
17
|
-
No FastAPI or database. LLM profiles live in `llms.json`, agent settings in `webpilot.yaml`. The interactive shell is [OpenTUI](https://opentui.com). Headless `run` is for CI.
|
|
18
|
-
|
|
19
|
-
The loop matches the WebPilot design in test-agent-nexus (`backend/docs/WEBPILOT_FLOW.md`): DOM observe with shadow roots, viewport JPEG, one JSON action per step, then click / type / select / navigate. See [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) and [HOW_TO_USE.md](HOW_TO_USE.md).
|
|
20
|
-
|
|
21
|
-
## Install
|
|
22
|
-
|
|
23
|
-
OpenTUI needs **Bun 1.3+**. Node cannot load the native renderer.
|
|
24
|
-
|
|
25
|
-
The CLI is published on **npm** as `@capagents/webpilot` (the unscoped name is too close to an existing package). **PyPI** package `webpilot-cli` is a pip launcher for the same `webpilot` command (`webpilot` is already another project on PyPI).
|
|
26
|
-
|
|
27
|
-
```bash
|
|
28
|
-
curl -fsSL https://bun.sh/install | bash
|
|
29
|
-
|
|
30
|
-
# npm
|
|
31
|
-
npm install -g @capagents/webpilot
|
|
32
|
-
npx @capagents/webpilot --help
|
|
33
|
-
|
|
34
|
-
# pip (launcher; runs the npm package via bun)
|
|
35
|
-
pip install webpilot-cli
|
|
36
|
-
webpilot --help
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
Live browser profiles also need Chromium: `bunx playwright install chromium`. The `mock` profile does not.
|
|
40
|
-
|
|
41
|
-
From this repo:
|
|
42
|
-
|
|
43
|
-
```bash
|
|
44
|
-
cd WebPilot
|
|
45
|
-
bun install
|
|
46
|
-
bun src/index.ts init
|
|
47
|
-
bun src/index.ts start
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
One-shot release (same version on both registries; assumes `npm` and `twine` are already logged in):
|
|
51
|
-
|
|
52
|
-
```bash
|
|
53
|
-
./scripts/publish.sh # current version
|
|
54
|
-
./scripts/publish.sh 0.2.0 # bump + publish
|
|
55
|
-
./scripts/publish.sh --dry-run # pack only
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
npm is published first. The pip launcher runs `bun x @capagents/webpilot@<version>`.
|
|
59
|
-
|
|
60
|
-
## Configure
|
|
61
|
-
|
|
62
|
-
`init` writes:
|
|
63
|
-
|
|
64
|
-
| File | Purpose |
|
|
65
|
-
|------|---------|
|
|
66
|
-
| `webpilot.yaml` | Browser, prompts, export, active profile |
|
|
67
|
-
| `llms.json` | Named LLM profiles |
|
|
68
|
-
| `.env.example` | API key names |
|
|
69
|
-
|
|
70
|
-
```bash
|
|
71
|
-
webpilot models
|
|
72
|
-
webpilot run --goal "Read the homepage" --url https://example.com --profile mock --plain
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
`mock` uses a synthetic page, writes `workflow.yaml` and `webpilot.spec.ts`, and does not call a model. Switch `llm.active` to `azure-gpt4o` or `openai-gpt4o` for a real browser run.
|
|
76
|
-
|
|
77
|
-
## CLI
|
|
78
|
-
|
|
79
|
-
```bash
|
|
80
|
-
webpilot start
|
|
81
|
-
webpilot start -u https://example.com -g "Find the documentation link" -p openai-gpt4o
|
|
82
|
-
|
|
83
|
-
webpilot run --goal "Get a quote" --url https://example.com --profile azure-gpt4o --headed
|
|
84
|
-
webpilot run --goal "..." --url https://example.com --profile mock --plain --out ./out/demo
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
Inside the shell: `/url`, `/goal`, `/run`, `/stop`, `/headed`, `/steps`, `/profile`, `/export`, `/exit`. A line without a slash is the goal and starts the run; the agent chooses which site to open. `/url` only pins a start page.
|
webpilot_cli-0.1.2/README.md
DELETED
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
# WebPilot
|
|
2
|
-
|
|
3
|
-
Self-contained browser agent: OODA loop (observe → orient → decide → act) → Playwright spec.
|
|
4
|
-
|
|
5
|
-
No FastAPI or database. LLM profiles live in `llms.json`, agent settings in `webpilot.yaml`. The interactive shell is [OpenTUI](https://opentui.com). Headless `run` is for CI.
|
|
6
|
-
|
|
7
|
-
The loop matches the WebPilot design in test-agent-nexus (`backend/docs/WEBPILOT_FLOW.md`): DOM observe with shadow roots, viewport JPEG, one JSON action per step, then click / type / select / navigate. See [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) and [HOW_TO_USE.md](HOW_TO_USE.md).
|
|
8
|
-
|
|
9
|
-
## Install
|
|
10
|
-
|
|
11
|
-
OpenTUI needs **Bun 1.3+**. Node cannot load the native renderer.
|
|
12
|
-
|
|
13
|
-
The CLI is published on **npm** as `@capagents/webpilot` (the unscoped name is too close to an existing package). **PyPI** package `webpilot-cli` is a pip launcher for the same `webpilot` command (`webpilot` is already another project on PyPI).
|
|
14
|
-
|
|
15
|
-
```bash
|
|
16
|
-
curl -fsSL https://bun.sh/install | bash
|
|
17
|
-
|
|
18
|
-
# npm
|
|
19
|
-
npm install -g @capagents/webpilot
|
|
20
|
-
npx @capagents/webpilot --help
|
|
21
|
-
|
|
22
|
-
# pip (launcher; runs the npm package via bun)
|
|
23
|
-
pip install webpilot-cli
|
|
24
|
-
webpilot --help
|
|
25
|
-
```
|
|
26
|
-
|
|
27
|
-
Live browser profiles also need Chromium: `bunx playwright install chromium`. The `mock` profile does not.
|
|
28
|
-
|
|
29
|
-
From this repo:
|
|
30
|
-
|
|
31
|
-
```bash
|
|
32
|
-
cd WebPilot
|
|
33
|
-
bun install
|
|
34
|
-
bun src/index.ts init
|
|
35
|
-
bun src/index.ts start
|
|
36
|
-
```
|
|
37
|
-
|
|
38
|
-
One-shot release (same version on both registries; assumes `npm` and `twine` are already logged in):
|
|
39
|
-
|
|
40
|
-
```bash
|
|
41
|
-
./scripts/publish.sh # current version
|
|
42
|
-
./scripts/publish.sh 0.2.0 # bump + publish
|
|
43
|
-
./scripts/publish.sh --dry-run # pack only
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
npm is published first. The pip launcher runs `bun x @capagents/webpilot@<version>`.
|
|
47
|
-
|
|
48
|
-
## Configure
|
|
49
|
-
|
|
50
|
-
`init` writes:
|
|
51
|
-
|
|
52
|
-
| File | Purpose |
|
|
53
|
-
|------|---------|
|
|
54
|
-
| `webpilot.yaml` | Browser, prompts, export, active profile |
|
|
55
|
-
| `llms.json` | Named LLM profiles |
|
|
56
|
-
| `.env.example` | API key names |
|
|
57
|
-
|
|
58
|
-
```bash
|
|
59
|
-
webpilot models
|
|
60
|
-
webpilot run --goal "Read the homepage" --url https://example.com --profile mock --plain
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
`mock` uses a synthetic page, writes `workflow.yaml` and `webpilot.spec.ts`, and does not call a model. Switch `llm.active` to `azure-gpt4o` or `openai-gpt4o` for a real browser run.
|
|
64
|
-
|
|
65
|
-
## CLI
|
|
66
|
-
|
|
67
|
-
```bash
|
|
68
|
-
webpilot start
|
|
69
|
-
webpilot start -u https://example.com -g "Find the documentation link" -p openai-gpt4o
|
|
70
|
-
|
|
71
|
-
webpilot run --goal "Get a quote" --url https://example.com --profile azure-gpt4o --headed
|
|
72
|
-
webpilot run --goal "..." --url https://example.com --profile mock --plain --out ./out/demo
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
Inside the shell: `/url`, `/goal`, `/run`, `/stop`, `/headed`, `/steps`, `/profile`, `/export`, `/exit`. A line without a slash is the goal and starts the run; the agent chooses which site to open. `/url` only pins a start page.
|
|
@@ -1,87 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: webpilot-cli
|
|
3
|
-
Version: 0.1.2
|
|
4
|
-
Summary: pip launcher for the WebPilot browser agent (npm package: @capagents/webpilot)
|
|
5
|
-
Author: CLI-Agents
|
|
6
|
-
License: MIT
|
|
7
|
-
Keywords: webpilot,browser,agent,cli,opentui
|
|
8
|
-
Requires-Python: >=3.9
|
|
9
|
-
Description-Content-Type: text/markdown
|
|
10
|
-
Provides-Extra: dev
|
|
11
|
-
Requires-Dist: pytest>=8.0; extra == "dev"
|
|
12
|
-
|
|
13
|
-
# WebPilot
|
|
14
|
-
|
|
15
|
-
Self-contained browser agent: OODA loop (observe → orient → decide → act) → Playwright spec.
|
|
16
|
-
|
|
17
|
-
No FastAPI or database. LLM profiles live in `llms.json`, agent settings in `webpilot.yaml`. The interactive shell is [OpenTUI](https://opentui.com). Headless `run` is for CI.
|
|
18
|
-
|
|
19
|
-
The loop matches the WebPilot design in test-agent-nexus (`backend/docs/WEBPILOT_FLOW.md`): DOM observe with shadow roots, viewport JPEG, one JSON action per step, then click / type / select / navigate. See [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) and [HOW_TO_USE.md](HOW_TO_USE.md).
|
|
20
|
-
|
|
21
|
-
## Install
|
|
22
|
-
|
|
23
|
-
OpenTUI needs **Bun 1.3+**. Node cannot load the native renderer.
|
|
24
|
-
|
|
25
|
-
The CLI is published on **npm** as `@capagents/webpilot` (the unscoped name is too close to an existing package). **PyPI** package `webpilot-cli` is a pip launcher for the same `webpilot` command (`webpilot` is already another project on PyPI).
|
|
26
|
-
|
|
27
|
-
```bash
|
|
28
|
-
curl -fsSL https://bun.sh/install | bash
|
|
29
|
-
|
|
30
|
-
# npm
|
|
31
|
-
npm install -g @capagents/webpilot
|
|
32
|
-
npx @capagents/webpilot --help
|
|
33
|
-
|
|
34
|
-
# pip (launcher; runs the npm package via bun)
|
|
35
|
-
pip install webpilot-cli
|
|
36
|
-
webpilot --help
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
Live browser profiles also need Chromium: `bunx playwright install chromium`. The `mock` profile does not.
|
|
40
|
-
|
|
41
|
-
From this repo:
|
|
42
|
-
|
|
43
|
-
```bash
|
|
44
|
-
cd WebPilot
|
|
45
|
-
bun install
|
|
46
|
-
bun src/index.ts init
|
|
47
|
-
bun src/index.ts start
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
One-shot release (same version on both registries; assumes `npm` and `twine` are already logged in):
|
|
51
|
-
|
|
52
|
-
```bash
|
|
53
|
-
./scripts/publish.sh # current version
|
|
54
|
-
./scripts/publish.sh 0.2.0 # bump + publish
|
|
55
|
-
./scripts/publish.sh --dry-run # pack only
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
npm is published first. The pip launcher runs `bun x @capagents/webpilot@<version>`.
|
|
59
|
-
|
|
60
|
-
## Configure
|
|
61
|
-
|
|
62
|
-
`init` writes:
|
|
63
|
-
|
|
64
|
-
| File | Purpose |
|
|
65
|
-
|------|---------|
|
|
66
|
-
| `webpilot.yaml` | Browser, prompts, export, active profile |
|
|
67
|
-
| `llms.json` | Named LLM profiles |
|
|
68
|
-
| `.env.example` | API key names |
|
|
69
|
-
|
|
70
|
-
```bash
|
|
71
|
-
webpilot models
|
|
72
|
-
webpilot run --goal "Read the homepage" --url https://example.com --profile mock --plain
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
`mock` uses a synthetic page, writes `workflow.yaml` and `webpilot.spec.ts`, and does not call a model. Switch `llm.active` to `azure-gpt4o` or `openai-gpt4o` for a real browser run.
|
|
76
|
-
|
|
77
|
-
## CLI
|
|
78
|
-
|
|
79
|
-
```bash
|
|
80
|
-
webpilot start
|
|
81
|
-
webpilot start -u https://example.com -g "Find the documentation link" -p openai-gpt4o
|
|
82
|
-
|
|
83
|
-
webpilot run --goal "Get a quote" --url https://example.com --profile azure-gpt4o --headed
|
|
84
|
-
webpilot run --goal "..." --url https://example.com --profile mock --plain --out ./out/demo
|
|
85
|
-
```
|
|
86
|
-
|
|
87
|
-
Inside the shell: `/url`, `/goal`, `/run`, `/stop`, `/headed`, `/steps`, `/profile`, `/export`, `/exit`. A line without a slash is the goal and starts the run; the agent chooses which site to open. `/url` only pins a start page.
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|