walla-cli 0.1.0__tar.gz → 0.1.1__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.
- {walla_cli-0.1.0 → walla_cli-0.1.1}/AGENTS.md +1 -1
- {walla_cli-0.1.0 → walla_cli-0.1.1}/PKG-INFO +6 -8
- {walla_cli-0.1.0 → walla_cli-0.1.1}/README.md +5 -7
- {walla_cli-0.1.0 → walla_cli-0.1.1}/docs/mcp.md +1 -1
- {walla_cli-0.1.0 → walla_cli-0.1.1}/pyproject.toml +1 -1
- {walla_cli-0.1.0 → walla_cli-0.1.1}/skills/walla/SKILL.md +1 -1
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/__init__.py +1 -1
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/cli/banner.py +16 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/cli/main.py +5 -3
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/core/instruct.py +2 -1
- {walla_cli-0.1.0 → walla_cli-0.1.1}/.cursor/rules/quality.mdc +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/.github/workflows/ci.yml +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/.gitignore +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/LICENSE +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/docs/WIRE.md +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/docs/assets/walla-github-banner.jpg +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/docs/code_quality.md +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/docs/data_engineering_standards.md +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/docs/objective_function.md +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/docs/rate_limit_analysis.md +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/fixtures/categories.json +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/fixtures/item_detail.json +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/fixtures/search_bicicleta.json +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/scripts/check_code_quality.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/scripts/probe_rate.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/tests/test_account.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/tests/test_account_more.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/tests/test_catch.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/tests/test_cli_json.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/tests/test_core.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/tests/test_edges.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/tests/test_http_more.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/tests/test_live.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/tests/test_parsers.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/tests/test_polite.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/tests/test_search_api.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/tests/test_session_store.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/tests/test_verdict.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/account/__init__.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/account/actions.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/account/cookies.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/account/inbox.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/account/login.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/account/prompt.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/account/session_store.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/cli/__init__.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/cli/catch.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/cli/cmd_account.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/cli/cmd_look.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/cli/cmd_ops.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/cli/console.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/core/__init__.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/core/envelope.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/core/errors.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/core/exceptions.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/core/human_fix.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/core/path.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/http/__init__.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/http/client.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/http/headers.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/http/polite.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/hunter/__init__.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/hunter/profile_store.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/hunter/verdict.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/hunter/watches.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/mcp/__init__.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/mcp/_entry.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/mcp/server.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/models/__init__.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/models/account.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/models/listing.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/models/profile.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/search/__init__.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/search/api.py +0 -0
- {walla_cli-0.1.0 → walla_cli-0.1.1}/walla/search/parse.py +0 -0
|
@@ -21,7 +21,7 @@ pytest -q -m "not live"
|
|
|
21
21
|
## Calling walla from an agent
|
|
22
22
|
|
|
23
23
|
```bash
|
|
24
|
-
pipx install 'walla-cli[mcp]'
|
|
24
|
+
pipx install 'walla-cli[mcp]' # PyPI preferred
|
|
25
25
|
walla instruct --json
|
|
26
26
|
walla setup --lat 41.39 --lon 2.17 --km 30 --label Barcelona --json
|
|
27
27
|
walla login --cookie '<session-token>' --json
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Metadata-Version: 2.5
|
|
2
2
|
Name: walla-cli
|
|
3
|
-
Version: 0.1.
|
|
3
|
+
Version: 0.1.1
|
|
4
4
|
Summary: Wallapop.es CLI - look · offer · talk for humans and agents
|
|
5
5
|
Project-URL: Homepage, https://github.com/berendgort/wallapop-cli
|
|
6
6
|
Project-URL: Repository, https://github.com/berendgort/wallapop-cli
|
|
@@ -106,11 +106,11 @@ Link listings as `https://es.wallapop.com/item/<web_slug>`. Verdicts:
|
|
|
106
106
|
|
|
107
107
|
### Bootstrap
|
|
108
108
|
|
|
109
|
-
1. Install from
|
|
109
|
+
1. Install from **PyPI** (preferred):
|
|
110
110
|
```bash
|
|
111
|
-
pipx install 'walla-cli[mcp]'
|
|
112
|
-
|
|
113
|
-
|
|
111
|
+
pipx install 'walla-cli[mcp]'
|
|
112
|
+
```
|
|
113
|
+
From a clone only when hacking: `pipx install -e '.[mcp]'`.
|
|
114
114
|
2. `walla doctor --json` — read `auth.session` and `network.reachable`.
|
|
115
115
|
**Never** print tokens or cookies.
|
|
116
116
|
3. If no session: ask the human to run `walla login` and paste
|
|
@@ -151,9 +151,7 @@ Rules:
|
|
|
151
151
|
## Install
|
|
152
152
|
|
|
153
153
|
```bash
|
|
154
|
-
|
|
155
|
-
cd wallapop-cli
|
|
156
|
-
pipx install 'walla-cli[mcp]' # or: pipx install -e '.[mcp]'
|
|
154
|
+
pipx install 'walla-cli[mcp]' # PyPI: https://pypi.org/project/walla-cli/
|
|
157
155
|
walla setup --lat 41.39 --lon 2.17 --km 30 --label Barcelona --json
|
|
158
156
|
walla login # paste __Secure-next-auth.session-token
|
|
159
157
|
walla doctor --json
|
|
@@ -62,11 +62,11 @@ Link listings as `https://es.wallapop.com/item/<web_slug>`. Verdicts:
|
|
|
62
62
|
|
|
63
63
|
### Bootstrap
|
|
64
64
|
|
|
65
|
-
1. Install from
|
|
65
|
+
1. Install from **PyPI** (preferred):
|
|
66
66
|
```bash
|
|
67
|
-
pipx install 'walla-cli[mcp]'
|
|
68
|
-
|
|
69
|
-
|
|
67
|
+
pipx install 'walla-cli[mcp]'
|
|
68
|
+
```
|
|
69
|
+
From a clone only when hacking: `pipx install -e '.[mcp]'`.
|
|
70
70
|
2. `walla doctor --json` — read `auth.session` and `network.reachable`.
|
|
71
71
|
**Never** print tokens or cookies.
|
|
72
72
|
3. If no session: ask the human to run `walla login` and paste
|
|
@@ -107,9 +107,7 @@ Rules:
|
|
|
107
107
|
## Install
|
|
108
108
|
|
|
109
109
|
```bash
|
|
110
|
-
|
|
111
|
-
cd wallapop-cli
|
|
112
|
-
pipx install 'walla-cli[mcp]' # or: pipx install -e '.[mcp]'
|
|
110
|
+
pipx install 'walla-cli[mcp]' # PyPI: https://pypi.org/project/walla-cli/
|
|
113
111
|
walla setup --lat 41.39 --lon 2.17 --km 30 --label Barcelona --json
|
|
114
112
|
walla login # paste __Secure-next-auth.session-token
|
|
115
113
|
walla doctor --json
|
|
@@ -13,7 +13,7 @@ license: MIT
|
|
|
13
13
|
## Bootstrap
|
|
14
14
|
|
|
15
15
|
```bash
|
|
16
|
-
pipx install 'walla-cli[mcp]'
|
|
16
|
+
pipx install 'walla-cli[mcp]' # PyPI: https://pypi.org/project/walla-cli/
|
|
17
17
|
walla doctor --json
|
|
18
18
|
# If auth.session is false: ask human to run `walla login` and paste cookie
|
|
19
19
|
# Or: walla login --cookie '<value>' --json
|
|
@@ -20,6 +20,7 @@ _BANNER_ROWS = (
|
|
|
20
20
|
_STYLE = "bold #A3E635"
|
|
21
21
|
_TAG = "italic #D9F99D"
|
|
22
22
|
_CREDIT = "#84CC16"
|
|
23
|
+
_HOOK = "#BEF264"
|
|
23
24
|
|
|
24
25
|
|
|
25
26
|
def print_banner() -> None:
|
|
@@ -31,3 +32,18 @@ def print_banner() -> None:
|
|
|
31
32
|
console.print(Text(" look · offer · talk", style=_TAG))
|
|
32
33
|
console.print(Text(" Dr. Berend Gort · www.berendgort.dev", style=_CREDIT))
|
|
33
34
|
console.print()
|
|
35
|
+
console.print(
|
|
36
|
+
Text(
|
|
37
|
+
' Example: "Find a used kite near Barcelona under 400eur,\n'
|
|
38
|
+
' message the seller, offer if it is a GRAB."',
|
|
39
|
+
style=_HOOK,
|
|
40
|
+
)
|
|
41
|
+
)
|
|
42
|
+
console.print(
|
|
43
|
+
Text(
|
|
44
|
+
" Install: pipx install 'walla-cli[mcp]' "
|
|
45
|
+
"https://pypi.org/project/walla-cli/",
|
|
46
|
+
style=_CREDIT,
|
|
47
|
+
)
|
|
48
|
+
)
|
|
49
|
+
console.print()
|
|
@@ -23,9 +23,11 @@ app = typer.Typer(
|
|
|
23
23
|
name="walla",
|
|
24
24
|
cls=_WallaGroup,
|
|
25
25
|
help=(
|
|
26
|
-
"Wallapop.es look · offer · talk
|
|
27
|
-
"
|
|
28
|
-
"
|
|
26
|
+
"Wallapop.es look · offer · talk. "
|
|
27
|
+
"Example ask: find a used kite near Barcelona under 400eur, "
|
|
28
|
+
"message seller, offer if GRAB. "
|
|
29
|
+
"Install: pipx install 'walla-cli[mcp]'. "
|
|
30
|
+
"Recipe: walla instruct --json."
|
|
29
31
|
),
|
|
30
32
|
no_args_is_help=True,
|
|
31
33
|
add_completion=False,
|
|
@@ -18,7 +18,8 @@ def instruct_recipe() -> dict[str, Any]:
|
|
|
18
18
|
"-> walla inbox."
|
|
19
19
|
),
|
|
20
20
|
"protocol": [
|
|
21
|
-
"Install: pipx install 'walla-cli[mcp]'
|
|
21
|
+
"Install from PyPI: pipx install 'walla-cli[mcp]' "
|
|
22
|
+
"(https://pypi.org/project/walla-cli/). Clone only if hacking.",
|
|
22
23
|
"walla doctor --json - never print tokens or cookies.",
|
|
23
24
|
"If no session: ask the human to run `walla login` and paste "
|
|
24
25
|
"__Secure-next-auth.session-token (or pass --cookie for non-interactive).",
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|