@claudinho/cli 0.4.0 → 0.4.2
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.
- package/README.md +15 -42
- package/dist/index.js +1 -1
- package/package.json +14 -6
package/README.md
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# @claudinho/cli ⚽
|
|
2
2
|
|
|
3
|
-
**The 2026 men's football tournament, right in your terminal.** Live scores, fixtures, group tables, and market
|
|
3
|
+
**The 2026 men's football tournament, right in your terminal.** Live scores, fixtures, group tables, and market signals — TZ-aware, localized, scriptable.
|
|
4
4
|
|
|
5
5
|
> ⚠️ **Not affiliated with, endorsed by, or connected to FIFA or Anthropic.**
|
|
6
6
|
> Claudinho is an independent, open-source fan project. It shows factual match
|
|
@@ -23,7 +23,7 @@ claudinho live # matches in play right now
|
|
|
23
23
|
claudinho next <TEAM> # a team's next fixture + countdown (e.g. next MEX)
|
|
24
24
|
claudinho table [GROUP] # group standings (default: all groups)
|
|
25
25
|
claudinho match <id> # a single match's detail
|
|
26
|
-
claudinho markets [target] # prediction-market
|
|
26
|
+
claudinho markets [target] # prediction-market signals: today | <date> | <id> | next <TEAM>
|
|
27
27
|
claudinho share [target] # copy-pasteable match snippet: today | live | <date> | <id> | next <TEAM>
|
|
28
28
|
claudinho prompt # one compact status line (for statusline/tmux/Starship)
|
|
29
29
|
claudinho init-statusline # wire it into the Claude Code statusline
|
|
@@ -70,7 +70,7 @@ localized per `--lang`, and they never affect `--json` output.
|
|
|
70
70
|
|
|
71
71
|
## Prediction-market signals
|
|
72
72
|
|
|
73
|
-
`claudinho markets` shows **read-only** prediction-market
|
|
73
|
+
`claudinho markets` shows **read-only** prediction-market signals — "who's favored" as
|
|
74
74
|
market-implied percentages — for a date, a match, or a team's next fixture:
|
|
75
75
|
|
|
76
76
|
```bash
|
|
@@ -110,6 +110,9 @@ claudinho share 760415 # one match by id
|
|
|
110
110
|
claudinho share next MEX --copy # …and copy it straight to the clipboard
|
|
111
111
|
```
|
|
112
112
|
|
|
113
|
+
<!-- DEMO CARD: verbatim output of `claudinho share next MEX --tz America/Mexico_City`.
|
|
114
|
+
REGENERATE immediately before merging — the market block is gate-conditional
|
|
115
|
+
and the numbers drift. Never hand-edit. -->
|
|
113
116
|
```text
|
|
114
117
|
Next up for Mexico
|
|
115
118
|
|
|
@@ -117,9 +120,9 @@ Next up for Mexico
|
|
|
117
120
|
Jun 11 · 13:00 America/Mexico_City
|
|
118
121
|
Estadio Banorte, Mexico City, Mexico
|
|
119
122
|
|
|
120
|
-
Prediction markets
|
|
121
|
-
Mexico
|
|
122
|
-
Source: Polymarket · informational only
|
|
123
|
+
Prediction markets favor Mexico.
|
|
124
|
+
Mexico 69% · Draw 20% · South Africa 10%
|
|
125
|
+
Source: Polymarket · updated 08:15 UTC · informational only
|
|
123
126
|
|
|
124
127
|
#VibingLaVidaLoca · Independent fan project · not affiliated with FIFA or Anthropic.
|
|
125
128
|
Try it: npx @claudinho/cli next MEX
|
|
@@ -142,25 +145,10 @@ for scripts and future reuse. No clipboard tool? `claudinho share … | pbcopy`
|
|
|
142
145
|
|
|
143
146
|
### Want an image?
|
|
144
147
|
|
|
145
|
-
The snippet is plain text, so a
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
```bash
|
|
151
|
-
# capture the command's output directly (charmbracelet/freeze)
|
|
152
|
-
freeze --execute "claudinho share next MEX" -o card.png
|
|
153
|
-
|
|
154
|
-
# …or pipe the text into freeze / silicon
|
|
155
|
-
claudinho share next MEX | freeze --language text -o card.png
|
|
156
|
-
claudinho share next MEX | silicon -l txt -o card.png
|
|
157
|
-
|
|
158
|
-
# …or paste it into a web tool like carbon.now.sh or ray.so
|
|
159
|
-
```
|
|
160
|
-
|
|
161
|
-
Claudinho stays text-first — it doesn't ship an image renderer, so there's nothing
|
|
162
|
-
extra to install in the CLI and no fonts/licensing to worry about: whatever your
|
|
163
|
-
terminal or the screenshot tool already draws (including the flags) is what you get.
|
|
148
|
+
The snippet is plain text, so a screenshot *is* your share card — or render one with an
|
|
149
|
+
existing tool, e.g. `freeze --execute "claudinho share next MEX" -o card.png`
|
|
150
|
+
(charmbracelet/freeze), `silicon`, or carbon.now.sh. Claudinho stays text-first:
|
|
151
|
+
no bundled image renderer, no fonts or licensing to worry about.
|
|
164
152
|
|
|
165
153
|
## Statusline (Claude Code)
|
|
166
154
|
|
|
@@ -171,7 +159,7 @@ claudinho init-statusline --print # just print the snippet
|
|
|
171
159
|
|
|
172
160
|
The statusline reads from a local micro-cache and **never blocks on the
|
|
173
161
|
network** (<150ms). When several matches are live it shows them all inline:
|
|
174
|
-
`⚽
|
|
162
|
+
`⚽ 🇳🇴 1–1 🇫🇷 87' · 🇸🇳 1–2 🇮🇶 86'`. Customize via env:
|
|
175
163
|
|
|
176
164
|
- `CLAUDINHO_TEAM=MEX` — show only your team's match
|
|
177
165
|
- `CLAUDINHO_MAX=2` — cap how many live matches show inline (rest collapse to `+N`; default: all)
|
|
@@ -190,27 +178,12 @@ Wires `claudinho hook` into Claude Code's `UserPromptSubmit`. During a match,
|
|
|
190
178
|
the live score is injected into Claude's context so it can mention it naturally;
|
|
191
179
|
off-match it's silent (zero added tokens). Restart Claude Code to activate.
|
|
192
180
|
|
|
193
|
-
## Other competitions
|
|
194
|
-
|
|
195
|
-
By default Claudinho follows the 2026 World Cup. To follow a different
|
|
196
|
-
competition (e.g. international friendlies before the tournament starts):
|
|
197
|
-
|
|
198
|
-
```bash
|
|
199
|
-
export CLAUDINHO_COMPETITION=fifa.friendly
|
|
200
|
-
claudinho live # live friendlies
|
|
201
|
-
unset CLAUDINHO_COMPETITION # back to the World Cup
|
|
202
|
-
```
|
|
203
|
-
|
|
204
|
-
Only the live fetch changes; the bundled schedule is always the World Cup. The
|
|
205
|
-
statusline/hook cache is keyed to the active competition, so switching with
|
|
206
|
-
`CLAUDINHO_COMPETITION` never surfaces stale scores from the other competition.
|
|
207
|
-
|
|
208
181
|
## How it works
|
|
209
182
|
|
|
210
183
|
The full fixture list (104 matches, groups, venues, host cities, kickoffs) ships **bundled**
|
|
211
184
|
in the package, so the common path is offline and instant. Only live match
|
|
212
185
|
state hits the network. Live scores come from **ESPN's** public scoreboard (a
|
|
213
|
-
swappable provider, attributed in output as `Live data: ESPN`) and market
|
|
186
|
+
swappable provider, attributed in output as `Live data: ESPN`) and market signals
|
|
214
187
|
from Polymarket; provider attribution and rate limits are respected.
|
|
215
188
|
|
|
216
189
|
## License
|
package/dist/index.js
CHANGED
|
@@ -4637,7 +4637,7 @@ function handlePipeError(stream) {
|
|
|
4637
4637
|
}
|
|
4638
4638
|
handlePipeError(process.stdout);
|
|
4639
4639
|
handlePipeError(process.stderr);
|
|
4640
|
-
var VERSION = "0.4.
|
|
4640
|
+
var VERSION = "0.4.2";
|
|
4641
4641
|
var DISCLAIMER = "Claudinho is an independent fan project. Not affiliated with or endorsed by FIFA or Anthropic.";
|
|
4642
4642
|
function ctxFrom(cmd) {
|
|
4643
4643
|
const root = cmd.parent ?? cmd;
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@claudinho/cli",
|
|
3
|
-
"version": "0.4.
|
|
4
|
-
"description": "
|
|
3
|
+
"version": "0.4.2",
|
|
4
|
+
"description": "Live scores, fixtures, group tables, and read-only prediction-market signals for the 2026 men's football tournament — in your terminal and Claude Code statusline. No API keys. Not affiliated with FIFA or Anthropic.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
7
7
|
"author": "Arturo Garrido",
|
|
@@ -29,13 +29,21 @@
|
|
|
29
29
|
"LICENSE"
|
|
30
30
|
],
|
|
31
31
|
"keywords": [
|
|
32
|
+
"world-cup",
|
|
33
|
+
"world-cup-2026",
|
|
34
|
+
"worldcup",
|
|
32
35
|
"football",
|
|
33
36
|
"soccer",
|
|
34
|
-
"
|
|
35
|
-
"
|
|
36
|
-
"cli",
|
|
37
|
+
"futbol",
|
|
38
|
+
"mundial",
|
|
37
39
|
"live-scores",
|
|
40
|
+
"fixtures",
|
|
41
|
+
"standings",
|
|
42
|
+
"cli",
|
|
38
43
|
"terminal",
|
|
44
|
+
"statusline",
|
|
45
|
+
"claude-code",
|
|
46
|
+
"2026",
|
|
39
47
|
"vibinglavidaloca"
|
|
40
48
|
],
|
|
41
49
|
"dependencies": {
|
|
@@ -48,7 +56,7 @@
|
|
|
48
56
|
"tsup": "^8.0.0",
|
|
49
57
|
"typescript": "^5.7.0",
|
|
50
58
|
"vitest": "^4.1.0",
|
|
51
|
-
"@claudinho/core": "0.4.
|
|
59
|
+
"@claudinho/core": "0.4.2"
|
|
52
60
|
},
|
|
53
61
|
"scripts": {
|
|
54
62
|
"build": "tsup",
|