@prave/cli 1.1.1 → 1.1.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.
Files changed (2) hide show
  1. package/README.md +166 -0
  2. package/package.json +2 -2
package/README.md ADDED
@@ -0,0 +1,166 @@
1
+ <div align="center">
2
+
3
+ # `@prave/cli`
4
+
5
+ **The Prave CLI — discover, install, author, version, test, and ship Skills to any AI agent from your terminal.**
6
+
7
+ [![npm version](https://img.shields.io/npm/v/@prave/cli?color=06B6D4&label=npm&style=flat-square)](https://www.npmjs.com/package/@prave/cli)
8
+ [![npm downloads](https://img.shields.io/npm/dm/@prave/cli?color=06B6D4&label=downloads&style=flat-square)](https://www.npmjs.com/package/@prave/cli)
9
+ [![node](https://img.shields.io/node/v/@prave/cli?color=06B6D4&label=node&style=flat-square)](https://nodejs.org)
10
+ [![license](https://img.shields.io/npm/l/@prave/cli?color=06B6D4&style=flat-square)](https://github.com/eppstudio/prave/blob/main/LICENSE)
11
+ [![docs](https://img.shields.io/badge/docs-prave.app-06B6D4?style=flat-square)](https://prave.app/docs)
12
+ [![status](https://img.shields.io/badge/status-status.prave.app-22c55e?style=flat-square)](https://status.prave.app)
13
+
14
+ [**Website**](https://prave.app) · [**Documentation**](https://prave.app/docs) · [**CLI Cheat Sheet**](https://prave.app/docs/cli/cheat-sheet) · [**Status**](https://status.prave.app)
15
+
16
+ </div>
17
+
18
+ ---
19
+
20
+ ## What is Prave?
21
+
22
+ [Prave](https://prave.app) is the developer platform for the **complete lifecycle of AI agent Skills** — a registry to discover them, an editor to write them, an intelligence layer to keep your library lean, a tester to verify them, and this CLI to wire it all into your agent's skills directory on every machine you work from.
23
+
24
+ The Skill format originated with [Claude Code](https://docs.claude.com/en/docs/claude-code/skills) (a folder with a `SKILL.md` and frontmatter). The same format works **out of the box** with any agent that auto-loads instruction files from a folder — Prave is agent-aware: each Skill is tagged with which agents understand it, and `prave deploy` mirrors a Skill across **Claude Code · OpenAI Codex · Cursor · Gemini CLI · Cline · Amp**, with more added as the ecosystem grows.
25
+
26
+ This package is the **command-line surface**. The web app, the public registry, billing, and the API live at [prave.app](https://prave.app).
27
+
28
+ ## Install
29
+
30
+ ```bash
31
+ npm install -g @prave/cli
32
+ # or
33
+ pnpm add -g @prave/cli
34
+ # or
35
+ yarn global add @prave/cli
36
+ ```
37
+
38
+ Requires **Node.js 18+**.
39
+
40
+ ## Quick start
41
+
42
+ ```bash
43
+ prave login # device-code auth in your browser
44
+ prave search "review pull requests"
45
+ prave install pr-reviewer # writes into your agent's skills folder
46
+ prave deploy pr-reviewer # mirror it to every agent you use
47
+ prave list # what's now installed locally
48
+ ```
49
+
50
+ That's enough to be useful. The full vocabulary is below.
51
+
52
+ > **Multi-agent by default.** `prave install` writes to your primary agent's skills folder (Claude Code by default; configurable via `prave settings`). `prave deploy` then mirrors the Skill to every other agent you've enabled — Cursor, Codex, Gemini, Cline, Amp — converting between their respective rule-file formats automatically.
53
+
54
+ ## Commands
55
+
56
+ ### Auth & account
57
+
58
+ | Command | What it does |
59
+ | -------------- | --------------------------------------------------------------------------------- |
60
+ | `prave login` | Browser device-code auth. Tokens stored chmod-600 at `~/.prave/credentials.json`. |
61
+ | `prave logout` | Forget local credentials. |
62
+ | `prave whoami` | Show signed-in user, plan, and credentials path. |
63
+
64
+ ### Discover & install
65
+
66
+ | Command | What it does |
67
+ | -------------------------------------------------------- | --------------------------------------------- |
68
+ | `prave search <query>` | Search the public Skill registry. |
69
+ | `prave find <query>` `[--smart\|--local\|--marketplace]` | Cross-source smart search. |
70
+ | `prave install <slug>` `[--no-deps]` | Install into your agent's skills folder. |
71
+ | `prave uninstall <slug>` | Remove a locally installed Skill. |
72
+ | `prave list` `[--remote] [--verbose]` | What's installed locally (or remote). |
73
+ | `prave export <slug>` `-o file.md` | Dump a Skill's `SKILL.md` without installing. |
74
+
75
+ ### Authoring & sync
76
+
77
+ | Command | What it does |
78
+ | ----------------------------------------------- | ----------------------------------------------------------------------- |
79
+ | `prave import` `[--upload --public\|--private]` | Scan your agent's skills folder, optionally publish to Prave. |
80
+ | `prave deploy <slug>` `[--agent <name>]` | Mirror a Skill across enabled agents (Claude / Cursor / Codex / Gemini / Cline / Amp). |
81
+ | `prave sync` | Pull updates for every locally installed Skill. |
82
+ | `prave update [<slug>]` `[--dry-run]` | Diff installed Skills against the registry, pull what's outdated. |
83
+ | `prave diff <slug>` | Local vs registry side-by-side diff. |
84
+
85
+ ### Intelligence
86
+
87
+ | Command | What it does |
88
+ | ------------------------------------ | ----------------------------------------------------- |
89
+ | `prave overview` `[--json]` | Summary of token cost, conflicts, and library health. |
90
+ | `prave whatdoes <slug>` | Triggers, tokens, conflicts for a Skill. |
91
+ | `prave conflicts` | Cross-Skill collision check. |
92
+ | `prave optimize` `[--remove-unused]` | Recommendations: heavy / underused / mergeable. |
93
+
94
+ ### Usage tracking _(Pro+)_
95
+
96
+ | Command | What it does |
97
+ | --------------------------------- | ------------------------------------------------------------ |
98
+ | `prave usage hook install` | Real-time invocation tracking for agents that support it. |
99
+ | `prave usage hook uninstall` | Remove the real-time hook. |
100
+ | `prave usage scan` `[--since 7d]` | Transcript scanner — backfill recent invocations. |
101
+ | `prave usage status` | Hook health, recent counts, and top Skills. |
102
+
103
+ > **Coverage today:** Real-time tracking lives natively on Claude Code via its plugin contract. For every other agent, the **transcript scanner** auto-runs at the tail of `prave sync` and reads the agent's local conversation history to extract Skill invocations — so Intelligence and the optimiser stay accurate everywhere. Real-time hooks for Cursor / Codex / Gemini / Cline / Amp ship as soon as those agents expose an equivalent contract.
104
+
105
+ ### Settings
106
+
107
+ | Command | What it does |
108
+ | ---------------- | ----------------------------------------------------------- |
109
+ | `prave settings` | Configure agents, providers, and credits from the terminal. |
110
+ | `prave cheat` | Print the full one-page command reference. |
111
+
112
+ ## Auto-update
113
+
114
+ `prave login` retries on `401` once with a fresh access token swapped via your stored `refresh_token`. You won't see "expired token" mid-install — re-authenticating is only required when the **refresh token itself** is rejected (you signed out everywhere or were idle for 30+ days).
115
+
116
+ ## Privacy & telemetry
117
+
118
+ The CLI sends a **fire-and-forget event per command** (e.g. `cli_install`, `cli_sync`, `cli_login_started`) to PostHog EU Cloud so we can see which commands matter to users. Events carry your Supabase user-id once you've logged in (or a stable per-machine UUID at `~/.prave/anon-id` if you haven't), plus OS family, OS release, Node.js version, and the CLI version — no command arguments, no Skill content, no file paths.
119
+
120
+ **Opt out** by setting:
121
+
122
+ ```bash
123
+ PRAVE_TELEMETRY=0
124
+ ```
125
+
126
+ (also accepts `false`, `off`, `no`). When set, no event ever leaves your machine.
127
+
128
+ Full data-protection details: [Privacy Policy](https://prave.app/legal/privacy).
129
+
130
+ ## Where things live
131
+
132
+ The exact Skill location depends on the agent — `prave settings` lets you reconfigure per-agent paths, and `prave list` always reflects what is actually on disk. The defaults:
133
+
134
+ ```
135
+ Claude Code ~/.claude/skills/<slug>/SKILL.md
136
+ Cursor ~/.cursor/rules/<slug>.mdc
137
+ Codex ~/.codex/skills/<slug>/SKILL.md
138
+ Gemini CLI ~/.gemini/skills/<slug>/SKILL.md
139
+ Cline ~/.cline/rules/<slug>.md
140
+ Amp ~/.amp/skills/<slug>/SKILL.md
141
+ ```
142
+
143
+ Local Prave state:
144
+
145
+ ```
146
+ ~/.prave/credentials.json # access + refresh tokens (chmod 600)
147
+ ~/.prave/anon-id # anonymous telemetry id (pre-login)
148
+ ~/.prave/usage-cursor.json # transcript scanner watermark
149
+ ```
150
+
151
+ ## Status
152
+
153
+ API health and uptime: [status.prave.app](https://status.prave.app) — auto-refreshes every 30 seconds, shows the live build version + commit SHA, and surfaces incidents from the last 30 days.
154
+
155
+ ## Links
156
+
157
+ - 🌐 [**prave.app**](https://prave.app) — the platform
158
+ - 📚 [**prave.app/docs**](https://prave.app/docs) — full documentation
159
+ - 📖 [**CLI Cheat Sheet**](https://prave.app/docs/cli/cheat-sheet) — every command on one page
160
+ - 💚 [**status.prave.app**](https://status.prave.app) — real-time health
161
+ - 🐛 [**GitHub Issues**](https://github.com/eppstudio/prave/issues) — bug reports & feature requests
162
+ - ✉️ [info@epplab-studio.de](mailto:info@epplab-studio.de) — direct contact
163
+
164
+ ## License
165
+
166
+ [MIT](https://github.com/eppstudio/prave/blob/main/LICENSE) © [EppLab Studio](https://epplab-studio.de)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@prave/cli",
3
- "version": "1.1.1",
3
+ "version": "1.1.2",
4
4
  "description": "Prave CLI — discover, install, version, test, and ship Claude Skills. The developer platform for the complete Skill lifecycle.",
5
5
  "type": "module",
6
6
  "keywords": [
@@ -51,7 +51,7 @@
51
51
  "open": "^10.1.0",
52
52
  "ora": "^8.0.1",
53
53
  "undici": "^6.18.0",
54
- "@prave/shared": "1.1.1"
54
+ "@prave/shared": "1.1.2"
55
55
  },
56
56
  "devDependencies": {
57
57
  "@types/node": "^20.12.7",