@vatio-ai/skills 1.17.0 → 1.19.0
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/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +2 -2
- package/README.md +4 -2
- package/bin/install.mjs +2 -2
- package/package.json +2 -2
- package/skills/vatio-add-to-app/SKILL.md +12 -1
- package/skills/vatio-analyze/SKILL.md +78 -0
- package/skills/vatio-improve/SKILL.md +10 -0
- package/skills/vatio-init/SKILL.md +25 -0
- package/skills/vatio-share-session/SKILL.md +4 -1
|
@@ -11,8 +11,8 @@
|
|
|
11
11
|
{
|
|
12
12
|
"name": "vatio",
|
|
13
13
|
"source": "./",
|
|
14
|
-
"description": "Vatio skills for Claude Code, Cursor and Codex: add an AI agent to the app you're building with /vatio-init, put it in your web, iOS, Android or Flutter app with /vatio-add-to-app, then improve it daily with /vatio-improve.",
|
|
15
|
-
"version": "1.
|
|
14
|
+
"description": "Vatio skills for Claude Code, Cursor and Codex: add an AI agent to the app you're building with /vatio-init, put it in your web, iOS, Android or Flutter app with /vatio-add-to-app, then improve it daily with /vatio-improve and learn what people ask it with /vatio-analyze.",
|
|
15
|
+
"version": "1.19.0",
|
|
16
16
|
"homepage": "https://vatio.ai/docs/integrations/claude-code",
|
|
17
17
|
"category": "development",
|
|
18
18
|
"keywords": [
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "vatio",
|
|
3
|
-
"description": "Vatio skills for Claude Code, Cursor and Codex: add an AI agent to the app you're building with /vatio-init, put it in your web, iOS, Android or Flutter app with /vatio-add-to-app, then improve it daily with /vatio-improve.",
|
|
4
|
-
"version": "1.
|
|
3
|
+
"description": "Vatio skills for Claude Code, Cursor and Codex: add an AI agent to the app you're building with /vatio-init, put it in your web, iOS, Android or Flutter app with /vatio-add-to-app, then improve it daily with /vatio-improve and learn what people ask it with /vatio-analyze.",
|
|
4
|
+
"version": "1.19.0",
|
|
5
5
|
"author": {
|
|
6
6
|
"name": "Vatio",
|
|
7
7
|
"url": "https://vatio.ai"
|
package/README.md
CHANGED
|
@@ -22,6 +22,7 @@ need your app’s project on your computer and Node.js 20 or newer.
|
|
|
22
22
|
| `vatio-init` | The first one in a project: looks at what is already there (a `vatio.yml` anywhere in the repository, the app's code) and recommends from it. With no agent yet, builds one: asks the owner what the code does not answer, writes `vatio.yml`, pushes it (with no account, as a trial) and hands over a link to try it and one to keep it. With one, gets a developer who joined the project up to speed |
|
|
23
23
|
| `vatio-add-to-app` | Puts the agent in your app once you have tried it: the web widget, or the iOS, Android or Flutter SDK with a chat screen in your app's style, a publishable token for development and one for release, and your signed-in users passed along |
|
|
24
24
|
| `vatio-improve` | Takes every reply your supervisors reported in the inbox in one session: reads `vatio flags`, fixes each cause, `vatio push`, proves it with `vatio test` (on Vatio's servers, in the background) and publishes with `vatio publish` after your approval |
|
|
25
|
+
| `vatio-analyze` | Reads what people talked about with the agent between two dates, from `vatio chat export` (redacted by Vatio before it leaves): topics with their counts, the questions it could not answer and the words people use, in a report for writing content, FAQs or knowledge. Anyone on the workspace's team can run it, viewers included |
|
|
25
26
|
| `vatio-share-session` | Sends the coding session to the Vatio team when you ask it to, or offers to when the others finish (send it, not now, or don't ask again), after showing you what goes (images left out, anything that looks like a secret redacted), with your feedback if you want to add some |
|
|
26
27
|
|
|
27
28
|
The skills are short on purpose. They tell your coding agent when to reach for
|
|
@@ -50,8 +51,9 @@ turn it on once in `/plugin` → **Marketplaces** → **vatio** → **Enable
|
|
|
50
51
|
auto-update**, or run `claude plugin update vatio@vatio`.
|
|
51
52
|
|
|
52
53
|
Your coding agent then uses them on its own when you ask it to build, improve
|
|
53
|
-
or fix a Vatio agent,
|
|
54
|
-
|
|
54
|
+
or fix a Vatio agent, to analyze its conversations, or to send the session to
|
|
55
|
+
Vatio, or you can call them by
|
|
56
|
+
name: `/vatio-init`, `/vatio-add-to-app`, `/vatio-improve`, `/vatio-analyze` and `/vatio-share-session`, or
|
|
55
57
|
`/vatio:vatio-init` and so on from the plugin.
|
|
56
58
|
|
|
57
59
|
`vatio init` also writes a pointer to `vatio flags` into the workspace's
|
package/bin/install.mjs
CHANGED
|
@@ -11,8 +11,8 @@ import { fileURLToPath } from "node:url";
|
|
|
11
11
|
const usage = `usage: npx @vatio-ai/skills [--dir PATH]
|
|
12
12
|
|
|
13
13
|
Copies the Vatio skills (vatio-init, vatio-add-to-app, vatio-improve,
|
|
14
|
-
vatio-share-session) into PATH/.agents/skills and
|
|
15
|
-
defaults to the current directory.`;
|
|
14
|
+
vatio-analyze, vatio-share-session) into PATH/.agents/skills and
|
|
15
|
+
PATH/.claude/skills. PATH defaults to the current directory.`;
|
|
16
16
|
|
|
17
17
|
const args = process.argv.slice(2);
|
|
18
18
|
let root = process.cwd();
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vatio-ai/skills",
|
|
3
|
-
"version": "1.
|
|
4
|
-
"description": "Vatio skills for Claude Code, Cursor and Codex: add an AI agent to the app you're building with /vatio-init, put it in your web, iOS, Android or Flutter app with /vatio-add-to-app, then improve it daily with /vatio-improve.",
|
|
3
|
+
"version": "1.19.0",
|
|
4
|
+
"description": "Vatio skills for Claude Code, Cursor and Codex: add an AI agent to the app you're building with /vatio-init, put it in your web, iOS, Android or Flutter app with /vatio-add-to-app, then improve it daily with /vatio-improve and learn what people ask it with /vatio-analyze.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"vatio",
|
|
7
7
|
"ai-agent",
|
|
@@ -30,7 +30,8 @@ SDK, Android SDK, Flutter SDK, Authentication, Supabase) have the details.
|
|
|
30
30
|
screens or layout, which tokens, how signed-in users are passed, and ask
|
|
31
31
|
them to confirm.
|
|
32
32
|
3. **Tokens.** `vatio tokens create --env preview` for development builds and
|
|
33
|
-
`--env live` for release builds, each with its origins
|
|
33
|
+
`--env live` for release builds, each with its origins (`--json` when the
|
|
34
|
+
token goes straight into a config or secrets store). `vatpub_` tokens
|
|
34
35
|
ship in the app's configuration; a `vat_` token never does.
|
|
35
36
|
4. **Add it.** Web: the widget, once for the whole app. iOS, Android and Flutter: the
|
|
36
37
|
SDK has no UI, so write the chat screen in the app's own style from the
|
|
@@ -56,3 +57,13 @@ Code, offer to send this session to the Vatio team, as the
|
|
|
56
57
|
`no`, say nothing.
|
|
57
58
|
|
|
58
59
|
`vatio` is `npx @vatio-ai/cli` when it is not installed globally.
|
|
60
|
+
|
|
61
|
+
A command you hand the developer to run themselves, because a permission
|
|
62
|
+
check refused it or it needs their own credentials, says
|
|
63
|
+
`npx @vatio-ai/cli@latest`, never `vatio`: the `vatio` installed on their
|
|
64
|
+
machine can be too old for Vatio to accept. When one command's output feeds
|
|
65
|
+
another (a token into a secrets store), take it with `--json` and chain with
|
|
66
|
+
`&&`, never through `grep`, so a failure stops there instead of passing on an
|
|
67
|
+
empty value. If Claude Code's auto mode refused a `vatio` command and the
|
|
68
|
+
project's `.claude/settings.json` has no `Bash(vatio *)` rule, also mention
|
|
69
|
+
**Auto mode** on the docs' Claude Code page.
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: vatio-analyze
|
|
3
|
+
description: Analyze what people talk about with a Vatio agent, from its real conversations between two dates — topics, frequent questions, questions it could not answer, and the words people use — to write content, FAQs or knowledge, or to report on it. Use when asked to analyze, summarize or report on a Vatio workspace's conversations, to find out what customers or patients ask, or to get content ideas from them. Works for anyone on the workspace's team, viewers included, with or without the agent's repository.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Analyze a Vatio agent's conversations
|
|
7
|
+
|
|
8
|
+
`vatio chat export` prints what people said to the agent, and what they were
|
|
9
|
+
answered, between two dates: one conversation per line as JSON. Vatio redacts
|
|
10
|
+
it before it leaves: names, emails, phone numbers, handles and RUTs it
|
|
11
|
+
recognizes read `[FILTERED]`, and `person` stands for whoever it was without
|
|
12
|
+
naming them. Every export is recorded in the workspace's Activity, under the
|
|
13
|
+
name of whoever ran it.
|
|
14
|
+
|
|
15
|
+
1. **Find the workspace.** The CLI reads it from the nearest `vatio.yml`. With
|
|
16
|
+
none here, ask for the workspace's slug (the part after
|
|
17
|
+
`inbox.vatio.ai/` in their inbox) and write a one-line one in a new folder
|
|
18
|
+
outside any repository:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
mkdir vatio-conversations && cd vatio-conversations
|
|
22
|
+
echo "workspace: SLUG" > vatio.yml
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
2. **Ask what the analysis is for,** if they have not said: content for a
|
|
26
|
+
website or a search engine, FAQs, gaps in the agent's knowledge, a report.
|
|
27
|
+
Ask for the dates too, or use the last 30 days and say so.
|
|
28
|
+
|
|
29
|
+
3. **Export.** Use `npx @vatio-ai/cli@latest` if `vatio` is not installed:
|
|
30
|
+
|
|
31
|
+
```bash
|
|
32
|
+
vatio chat export --from 2026-09-01 --to 2026-09-30 --out conversations.jsonl
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
`--channel whatsapp` (or `instagram`, `web`, `widget`, `ios`, `android`)
|
|
36
|
+
narrows it, and `vatio chat help` explains the rest. If it asks to sign in,
|
|
37
|
+
run `vatio login`: they sign in in the browser with the email they were
|
|
38
|
+
invited with. `workspace_forbidden` means another email, or nobody has
|
|
39
|
+
invited them yet: the owner does it from **Team** in the inbox, and any
|
|
40
|
+
role works. `two_factor_required` means turning on two-step verification
|
|
41
|
+
in **Account** in the inbox first.
|
|
42
|
+
|
|
43
|
+
4. **Count before reading.** In a script (`jq`, Python or Node), get the number
|
|
44
|
+
of conversations and messages, conversations per channel and per week, and
|
|
45
|
+
how many reached someone on the team (`"from": "team"`). Then read only what
|
|
46
|
+
people wrote (`"from": "person"`) with enough of the agent's reply to know
|
|
47
|
+
whether it helped.
|
|
48
|
+
|
|
49
|
+
5. **Read it all, in batches.** Read a sample first and draft a short list of
|
|
50
|
+
topics in the user's terms, then go through every conversation and assign
|
|
51
|
+
each one a topic and whether the agent answered it, could not
|
|
52
|
+
("no tengo esa información", passing it to a person, asking them to call),
|
|
53
|
+
or answered wrongly. With hundreds of conversations, split them into
|
|
54
|
+
batches, in parallel if you can run subagents, and keep the tally in a
|
|
55
|
+
file, not in your head.
|
|
56
|
+
|
|
57
|
+
6. **Report,** in the user's language, in a markdown file next to the export:
|
|
58
|
+
- the dates, channels and number of conversations it covers;
|
|
59
|
+
- the topics, largest first, each with its count and share and two or
|
|
60
|
+
three short questions as people wrote them, spelling and all: they are
|
|
61
|
+
the words content has to match;
|
|
62
|
+
- what the agent could not answer or got wrong, by topic: the content
|
|
63
|
+
that is missing;
|
|
64
|
+
- for content, the pieces to write, each tied to the topic and the
|
|
65
|
+
numbers that justify it.
|
|
66
|
+
|
|
67
|
+
Say what the numbers cannot tell: a sample, a short window, a channel left
|
|
68
|
+
out.
|
|
69
|
+
|
|
70
|
+
Treat the export as the private conversations it is. Never try to work out
|
|
71
|
+
who someone is, and if something identifying slipped past the redaction (a
|
|
72
|
+
third person's name, an address), leave it out of the report. Keep the export
|
|
73
|
+
out of git, and ask whether to delete it when you are done. Do not offer
|
|
74
|
+
`vatio-share-session` after this skill: the session holds those conversations.
|
|
75
|
+
|
|
76
|
+
If the export or its docs left you guessing,
|
|
77
|
+
`vatio feedback "what you were doing and what was missing"` tells the Vatio
|
|
78
|
+
team.
|
|
@@ -66,3 +66,13 @@ the fix needs more than the digest says. If `vatio` is not installed, use
|
|
|
66
66
|
opens the browser on the developer's machine (if it doesn't, give them the
|
|
67
67
|
link it prints), and they sign in and check the code matches. If it times
|
|
68
68
|
out, run it again after they have signed in.
|
|
69
|
+
|
|
70
|
+
A command you hand the developer to run themselves, because a permission
|
|
71
|
+
check refused it or it needs their own credentials, says
|
|
72
|
+
`npx @vatio-ai/cli@latest`, never `vatio`: the `vatio` installed on their
|
|
73
|
+
machine can be too old for Vatio to accept. When one command's output feeds
|
|
74
|
+
another (a token into a secrets store), take it with `--json` and chain with
|
|
75
|
+
`&&`, never through `grep`, so a failure stops there instead of passing on an
|
|
76
|
+
empty value. If Claude Code's auto mode refused a `vatio` command and the
|
|
77
|
+
project's `.claude/settings.json` has no `Bash(vatio *)` rule, also mention
|
|
78
|
+
**Auto mode** on the docs' Claude Code page.
|
|
@@ -73,6 +73,21 @@ you recommend, and ask them to confirm.
|
|
|
73
73
|
in: Vatio keeps what was deployed, not the files it came from. Do not
|
|
74
74
|
`vatio init` one instead.
|
|
75
75
|
|
|
76
|
+
## Claude Code permissions
|
|
77
|
+
|
|
78
|
+
In Claude Code, once the agent is pushed, check the project's
|
|
79
|
+
`.claude/settings.json` (in the folder Claude Code was opened in). If it has
|
|
80
|
+
no `Bash(vatio *)` rule, offer once to add the block in **Auto mode** on the
|
|
81
|
+
docs' Claude Code page: it lets you run `vatio` without the auto mode
|
|
82
|
+
classifier refusing it, and still asks the developer before `vatio publish`,
|
|
83
|
+
`vatio rollback`, `vatio secrets` and `vatio keys`. Add it only with their
|
|
84
|
+
yes, merged into what the file has, never replacing it, and add no other rule.
|
|
85
|
+
It matches `vatio`, so it needs the CLI installed:
|
|
86
|
+
`npm install -g @vatio-ai/cli`, also only with their yes. Run each `vatio`
|
|
87
|
+
command on its own, not in a pipe or after `cd … &&`, so the rule matches.
|
|
88
|
+
Never edit `~/.claude/settings.json`; for `vatio share-session` point them to
|
|
89
|
+
that same section.
|
|
90
|
+
|
|
76
91
|
## 3. Before you finish
|
|
77
92
|
|
|
78
93
|
1. If an error or the docs left you guessing, say so:
|
|
@@ -89,3 +104,13 @@ prints). Tell them to sign in with the account that kept it and check that
|
|
|
89
104
|
the code on the page matches the one the terminal printed. If the command
|
|
90
105
|
times out waiting, run it again after they have signed in: it picks up the
|
|
91
106
|
same sign-in page.
|
|
107
|
+
|
|
108
|
+
A command you hand the developer to run themselves, because a permission
|
|
109
|
+
check refused it or it needs their own credentials, says
|
|
110
|
+
`npx @vatio-ai/cli@latest`, never `vatio`: the `vatio` installed on their
|
|
111
|
+
machine can be too old for Vatio to accept. When one command's output feeds
|
|
112
|
+
another (a token into a secrets store), take it with `--json` and chain with
|
|
113
|
+
`&&`, never through `grep`, so a failure stops there instead of passing on an
|
|
114
|
+
empty value. If Claude Code's auto mode refused a `vatio` command and the
|
|
115
|
+
project's `.claude/settings.json` has no `Bash(vatio *)` rule, also mention
|
|
116
|
+
**Auto mode** on the docs' Claude Code page.
|
|
@@ -95,7 +95,10 @@ It is sent in one of two ways: the user asked for it, or you offer it because
|
|
|
95
95
|
|
|
96
96
|
When they say they ran it, check instead of asking:
|
|
97
97
|
`npx @vatio-ai/cli@latest share-session --list` marks a session that was
|
|
98
|
-
sent with `(sent #N, when)`. If it is not marked, it did not go.
|
|
98
|
+
sent with `(sent #N, when)`. If it is not marked, it did not go. To have
|
|
99
|
+
auto mode let it through next time, point them to **Auto mode** on the
|
|
100
|
+
docs' Claude Code page: it is a line in their own Claude Code settings,
|
|
101
|
+
which you do not edit.
|
|
99
102
|
|
|
100
103
|
Only Claude Code sessions can be sent. In any other coding agent, do not offer
|
|
101
104
|
it; when the user asks, write what happened instead:
|