tokalytics 2.0.7 → 2.0.9

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.
Files changed (2) hide show
  1. package/README.md +29 -4
  2. package/package.json +4 -4
package/README.md CHANGED
@@ -14,9 +14,15 @@ Os dados permanecem na sua máquina; nada é enviado para servidores externos pe
14
14
  ### Desenvolvimento (sem gerar binário)
15
15
 
16
16
  ```bash
17
- go run main.go
17
+ npm run dev
18
+ # ou:
19
+ go run . -dev
18
20
  ```
19
21
 
22
+ O flag **`-dev`** (ou a variável **`TOKALYTICS_DEV=1`**) faz o app **ignorar** outra instância já em execução (por exemplo a instalada via `npm install -g`). O dashboard sobe na **próxima porta livre** (ex.: `3457` se `3456` estiver com o app global).
23
+
24
+ Sem `-dev`, se já existir Tokalytics na faixa de portas, o processo apenas informa a URL e encerra.
25
+
20
26
  ### Build em Go (binário `tokalytics`)
21
27
 
22
28
  Na raiz do repositório:
@@ -34,12 +40,12 @@ Isso gera o executável `tokalytics` no diretório atual. Para rodar o app após
34
40
  ### Atalhos npm (equivalentes)
35
41
 
36
42
  ```bash
37
- npm run dev # go run main.go
43
+ npm run dev # go run . -dev
38
44
  npm run build # go build -o tokalytics main.go
39
45
  npm run start # compila e em seguida executa ./tokalytics
40
46
  ```
41
47
 
42
- Na primeira execução o app sobe o **servidor HTTP na porta `3456`** e o ícone na barra de menus. Use **«Abrir Dashboard»** no menu ou acesse [http://127.0.0.1:3456](http://127.0.0.1:3456).
48
+ Na primeira execução o app sobe o **servidor HTTP** (porta padrão `3456`; se estiver ocupada, usa a próxima livre) e o ícone na barra de menus. Use **«Abrir Dashboard»** no menu ou abra a URL mostrada no terminal.
43
49
 
44
50
  ### Instalação global pelo npm
45
51
 
@@ -55,6 +61,21 @@ Instalação a partir do repositório (sempre o `postinstall` da branch atual):
55
61
  npm install -g "github:kaicmurilo/Tokalytics"
56
62
  ```
57
63
 
64
+ ### CLI: instância única e controle
65
+
66
+ O binário `tokalytics` evita subir uma **segunda** cópia: se já houver uma instância ouvindo nas portas usuais (`3456`–`3555`) e respondendo como Tokalytics, o comando apenas informa a URL e encerra.
67
+
68
+ | Flag / comando | Efeito |
69
+ |----------------|--------|
70
+ | *(nenhuma)* ou `--start` | Inicia menu bar + dashboard se não houver instância; caso contrário, mensagem em stdout. |
71
+ | `--status` | Mostra se há instância rodando, URL, versão da API (`/api/health`) e PID quando o `runstate` bate com a porta. |
72
+ | `--stop` | Encerra a instância em execução (HTTP local `POST /api/shutdown`, só loopback). |
73
+ | `--reload` | Dispara atualização de dados na instância ativa (`GET /api/refresh`). |
74
+ | `--version`, `-v`, `--v` | Imprime a versão **deste binário** e sai. |
75
+ | `-h`, `--help` ou `tokalytics help` | Lista opções e sai com código 0. |
76
+
77
+ Estado auxiliar (PID/porta) fica em `~/.config/tokalytics/runstate.json` enquanto o app está rodando; é removido ao sair. Se a porta padrão `3456` estiver ocupada por outro programa, o Tokalytics tenta a próxima livre; use a URL indicada no log ou em **Settings** no dashboard.
78
+
58
79
  ## Dashboard
59
80
 
60
81
  Interface web em abas:
@@ -67,7 +88,11 @@ Interface web em abas:
67
88
  | **Prompts** | Mensagens que mais consumiram tokens |
68
89
  | **Sessões** | Lista pesquisável; clique em uma sessão para ver o detalhe (turns, custo por turno) |
69
90
 
70
- Há atalhos para **atualizar dados**, **compartilhar stats** (PNG) e **configurações** (cookies opcionais para APIs em nuvem).
91
+ Há atalhos para **atualizar dados** e **configurações** (cookies opcionais para APIs em nuvem).
92
+
93
+ ### Aviso de nova versão
94
+
95
+ Em builds com versão **semver** (releases; não `dev`), o dashboard consulta a última release no GitHub e, se houver versão mais nova, mostra um **painel lateral** com o comando `npm install -g tokalytics` (copiar com um clique) e link para a release. O aviso pode ser fechado e não reaparece para a mesma versão alvo até limpar o `localStorage` do site. A resposta do servidor é cacheada por cerca de **1 hora**; use `GITHUB_TOKEN` no ambiente se precisar de limite maior na API do GitHub.
71
96
 
72
97
  ## Licença
73
98
 
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "tokalytics",
3
- "version": "2.0.7",
4
- "description": "Veja para onde vão seus tokens do Claude Code, Gemini CLI, Cursor e Codex. Reescrito em Go como Tokalytics.",
3
+ "version": "2.0.9",
4
+ "description": "Instale globalmente: npm i -g tokalytics. Veja para onde vão seus tokens do Claude Code, Gemini CLI, Cursor e Codex. Reescrito em Go como Tokalytics.",
5
5
  "bin": {
6
6
  "tokalytics": "bin/run.js"
7
7
  },
@@ -12,7 +12,7 @@
12
12
  "scripts": {
13
13
  "postinstall": "node scripts/postinstall.js",
14
14
  "start": "go build -o tokalytics main.go && ./tokalytics",
15
- "dev": "go run main.go",
15
+ "dev": "go run . -dev",
16
16
  "build": "go build -o tokalytics main.go",
17
17
  "release:npm": "npm publish --access public"
18
18
  },
@@ -28,7 +28,7 @@
28
28
  "golang",
29
29
  "tokalytics"
30
30
  ],
31
- "author": "Aniket Parihar & Kaic Murilo",
31
+ "author": "Kaic Murilo",
32
32
  "license": "MIT",
33
33
  "repository": {
34
34
  "type": "git",