@vatio-ai/skills 0.0.0-stage → 1.3.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 +11 -0
- package/.claude-plugin/plugin.json +9 -0
- package/LICENSE.txt +21 -0
- package/README.md +51 -2
- package/bin/install.mjs +51 -0
- package/package.json +37 -4
- package/skills/vatio-improve/SKILL.md +46 -0
- package/skills/vatio-new/SKILL.md +41 -0
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "vatio",
|
|
3
|
+
"owner": { "name": "Vatio", "url": "https://vatio.ai" },
|
|
4
|
+
"plugins": [
|
|
5
|
+
{
|
|
6
|
+
"name": "vatio",
|
|
7
|
+
"source": "./",
|
|
8
|
+
"description": "Build a Vatio agent from your coding agent, then fix what supervisors flag and prove it with evals."
|
|
9
|
+
}
|
|
10
|
+
]
|
|
11
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "vatio",
|
|
3
|
+
"description": "Build a Vatio agent from your coding agent, then fix what supervisors flag and prove it with evals.",
|
|
4
|
+
"version": "1.3.0",
|
|
5
|
+
"author": { "name": "Vatio", "url": "https://vatio.ai" },
|
|
6
|
+
"homepage": "https://vatio.ai/docs",
|
|
7
|
+
"repository": "https://github.com/vatio-ai/skills",
|
|
8
|
+
"license": "MIT"
|
|
9
|
+
}
|
package/LICENSE.txt
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 Urcalab
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
CHANGED
|
@@ -1,3 +1,52 @@
|
|
|
1
|
-
#
|
|
1
|
+
# Vatio skills
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Skills for the coding agent working on your [Vatio](https://vatio.ai) agent.
|
|
4
|
+
|
|
5
|
+
| Skill | What it does |
|
|
6
|
+
|---|---|
|
|
7
|
+
| `vatio-new` | Builds a customer-facing agent from scratch: asks the owner what it needs to know, writes `vatio.yml`, pushes it and hands over a link to try |
|
|
8
|
+
| `vatio-improve` | Works through the replies your supervisors flagged in the inbox: reads `vatio flags`, fixes each cause on a branch, proves it with `vatio eval`, and opens a pull request |
|
|
9
|
+
|
|
10
|
+
The skills are short on purpose. They tell your coding agent when to reach for
|
|
11
|
+
the Vatio CLI; the instructions themselves come from the platform when it runs
|
|
12
|
+
`vatio docs` or `vatio flags`, so they are never out of date.
|
|
13
|
+
|
|
14
|
+
## Install
|
|
15
|
+
|
|
16
|
+
Any coding agent, from the root of your project:
|
|
17
|
+
|
|
18
|
+
```
|
|
19
|
+
npx @vatio-ai/skills
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
It copies both skills into `.agents/skills/` (Codex, Cursor, Gemini CLI,
|
|
23
|
+
GitHub Copilot, OpenCode and others) and `.claude/skills/` (Claude Code). Run
|
|
24
|
+
it again to update them.
|
|
25
|
+
|
|
26
|
+
Or in Claude Code, as a plugin:
|
|
27
|
+
|
|
28
|
+
```
|
|
29
|
+
/plugin marketplace add vatio-ai/skills
|
|
30
|
+
/plugin install vatio@vatio
|
|
31
|
+
```
|
|
32
|
+
|
|
33
|
+
Your agent then uses them on its own when you ask it to build, improve or fix
|
|
34
|
+
a Vatio agent, or you can call them by name: `/vatio-new` and `/vatio-improve`,
|
|
35
|
+
or `/vatio:vatio-new` and `/vatio:vatio-improve` from the plugin.
|
|
36
|
+
|
|
37
|
+
`vatio init` also writes a pointer to `vatio flags` into the workspace's
|
|
38
|
+
`AGENTS.md`, which most coding agents read without installing anything.
|
|
39
|
+
|
|
40
|
+
## Docs
|
|
41
|
+
|
|
42
|
+
[Improve your agent from flags](https://vatio.ai/docs/improve) ·
|
|
43
|
+
[CLI](https://vatio.ai/docs/cli/) · [Changelog](https://vatio.ai/docs/changelog)
|
|
44
|
+
|
|
45
|
+
## Issues
|
|
46
|
+
|
|
47
|
+
Bugs and ideas go to [issues](https://github.com/vatio-ai/skills/issues).
|
|
48
|
+
This repository is a read-only mirror of the skills as they ship inside
|
|
49
|
+
Vatio, so a pull request cannot be merged here: open an issue describing the
|
|
50
|
+
change instead.
|
|
51
|
+
|
|
52
|
+
MIT licensed.
|
package/bin/install.mjs
ADDED
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
// npx @vatio-ai/skills -- copies the Vatio skills into the project the command
|
|
3
|
+
// runs in, for every coding agent at once:
|
|
4
|
+
// .agents/skills/ Codex, Cursor, Gemini CLI, GitHub Copilot, OpenCode, Cline, Amp
|
|
5
|
+
// .claude/skills/ Claude Code, which does not read .agents/
|
|
6
|
+
// Running it again overwrites the copies with this version's.
|
|
7
|
+
import { cpSync, existsSync, readdirSync } from "node:fs";
|
|
8
|
+
import { dirname, join, relative } from "node:path";
|
|
9
|
+
import { fileURLToPath } from "node:url";
|
|
10
|
+
|
|
11
|
+
const usage = `usage: npx @vatio-ai/skills [--dir PATH]
|
|
12
|
+
|
|
13
|
+
Copies the Vatio skills (vatio-new, vatio-improve) into PATH/.agents/skills and
|
|
14
|
+
PATH/.claude/skills. PATH defaults to the current directory.`;
|
|
15
|
+
|
|
16
|
+
const args = process.argv.slice(2);
|
|
17
|
+
let root = process.cwd();
|
|
18
|
+
for (let i = 0; i < args.length; i++) {
|
|
19
|
+
const arg = args[i];
|
|
20
|
+
if (arg === "-h" || arg === "--help") {
|
|
21
|
+
console.log(usage);
|
|
22
|
+
process.exit(0);
|
|
23
|
+
} else if (arg === "--dir" && args[i + 1]) {
|
|
24
|
+
root = args[++i];
|
|
25
|
+
} else {
|
|
26
|
+
console.error(`Unknown argument: ${arg}\n\n${usage}`);
|
|
27
|
+
process.exit(1);
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
|
|
31
|
+
if (!existsSync(root)) {
|
|
32
|
+
console.error(`No such directory: ${root}`);
|
|
33
|
+
process.exit(1);
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
const source = join(dirname(fileURLToPath(import.meta.url)), "..", "skills");
|
|
37
|
+
const skills = readdirSync(source, { withFileTypes: true })
|
|
38
|
+
.filter((entry) => entry.isDirectory())
|
|
39
|
+
.map((entry) => entry.name);
|
|
40
|
+
|
|
41
|
+
for (const target of [".agents/skills", ".claude/skills"]) {
|
|
42
|
+
for (const skill of skills) {
|
|
43
|
+
const dest = join(root, target, skill);
|
|
44
|
+
cpSync(join(source, skill), dest, { recursive: true, force: true });
|
|
45
|
+
console.log(` ${relative(process.cwd(), join(dest, "SKILL.md")) || dest}`);
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
|
|
49
|
+
console.log(`
|
|
50
|
+
Ask your coding agent to build or improve a Vatio agent and it will use them.
|
|
51
|
+
Docs: https://vatio.ai/docs/integrations/claude-code`);
|
package/package.json
CHANGED
|
@@ -1,6 +1,39 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@vatio-ai/skills",
|
|
3
|
-
"version": "
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
|
|
3
|
+
"version": "1.3.0",
|
|
4
|
+
"description": "Agent skills for building and improving a Vatio agent from your coding agent: Claude Code, Codex, Cursor, Gemini CLI, Copilot and any agent that reads SKILL.md",
|
|
5
|
+
"keywords": [
|
|
6
|
+
"vatio",
|
|
7
|
+
"agent-skills",
|
|
8
|
+
"skills",
|
|
9
|
+
"claude-code",
|
|
10
|
+
"codex",
|
|
11
|
+
"cursor",
|
|
12
|
+
"ai-agent"
|
|
13
|
+
],
|
|
14
|
+
"homepage": "https://vatio.ai/docs/integrations/claude-code",
|
|
15
|
+
"bugs": "https://github.com/vatio-ai/skills/issues",
|
|
16
|
+
"license": "MIT",
|
|
17
|
+
"author": "Vatio",
|
|
18
|
+
"type": "module",
|
|
19
|
+
"bin": {
|
|
20
|
+
"vatio-skills": "bin/install.mjs"
|
|
21
|
+
},
|
|
22
|
+
"files": [
|
|
23
|
+
"bin/install.mjs",
|
|
24
|
+
"skills/",
|
|
25
|
+
".claude-plugin/",
|
|
26
|
+
"README.md",
|
|
27
|
+
"LICENSE.txt"
|
|
28
|
+
],
|
|
29
|
+
"engines": {
|
|
30
|
+
"node": ">=18"
|
|
31
|
+
},
|
|
32
|
+
"publishConfig": {
|
|
33
|
+
"access": "public"
|
|
34
|
+
},
|
|
35
|
+
"repository": {
|
|
36
|
+
"type": "git",
|
|
37
|
+
"url": "https://github.com/vatio-ai/skills"
|
|
38
|
+
}
|
|
39
|
+
}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: vatio-improve
|
|
3
|
+
description: Improve a Vatio agent from what its supervisors flagged. Use when asked to improve, fix or debug a Vatio agent, to work through flagged replies or wrong answers in production, or when a GitHub issue labelled vatio-flags arrives. Works in any directory with a vatio.yml.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Improve a Vatio agent from its flags
|
|
7
|
+
|
|
8
|
+
Supervisors flag wrong replies in the Vatio inbox and write what should have
|
|
9
|
+
happened: a different answer, an action, or a tool the agent should have used
|
|
10
|
+
or does not have. Vatio keeps the instructions for working them on the
|
|
11
|
+
platform, so they are never out of date here. Start by reading them:
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
vatio flags
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Run it from the directory with the workspace's `vatio.yml` (or below it). It
|
|
18
|
+
prints every open flag — the conversation, each tool call with what the
|
|
19
|
+
backend answered, and the supervisor's note — with how to work them at the
|
|
20
|
+
top. Follow those instructions; they take precedence over anything below.
|
|
21
|
+
|
|
22
|
+
In short:
|
|
23
|
+
|
|
24
|
+
1. Group the flags by cause, and fix each cause where it lives: `vatio.yml`,
|
|
25
|
+
a knowledge entry, a tool, or the backend a tool calls.
|
|
26
|
+
2. Work on a git branch. `vatio push` deploys it to the branch's own
|
|
27
|
+
environment, never to live.
|
|
28
|
+
3. Prove it with `vatio eval`: every flag is an eval case, replayed against
|
|
29
|
+
the branch and judged. The report counts the open flags apart from the
|
|
30
|
+
regression cases. A fix is done when its flags pass and nothing that
|
|
31
|
+
passed on live now fails.
|
|
32
|
+
4. Open a pull request with what you changed and the eval result. Name flags
|
|
33
|
+
by id (`F-7K2QX`), and report the open flags and the
|
|
34
|
+
regression cases as two counts, never one total. With no GitHub
|
|
35
|
+
repository connected, `vatio propose --env <branch> --title "…"
|
|
36
|
+
--summary-file why.md` instead: the workspace's owner accepts it from the
|
|
37
|
+
inbox, which publishes it. Never `vatio publish` it yourself.
|
|
38
|
+
5. If the digest, an error or the docs left you guessing, say so:
|
|
39
|
+
`vatio feedback "what you were doing and what was missing"`.
|
|
40
|
+
|
|
41
|
+
`vatio docs` prints the whole contract (manifest, tools, knowledge, CLI) if
|
|
42
|
+
the fix needs more than the digest says. If `vatio` is not installed, use
|
|
43
|
+
`npx @vatio-ai/cli` in its place; if it says to log in, run `vatio login`: it
|
|
44
|
+
opens the browser on the developer's machine (if it doesn't, give them the
|
|
45
|
+
link it prints), and they sign in and check the code matches. If it times
|
|
46
|
+
out, run it again after they have signed in.
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: vatio-new
|
|
3
|
+
description: Build someone a customer-facing AI agent on Vatio and get it to the console's Test screen, where they can try it — for WhatsApp, Instagram, a website widget or an app. Use when asked to create, set up, start or ship a Vatio agent, a chatbot or a support/sales assistant on Vatio, or when the user pastes the prompt from vatio.ai.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Start a Vatio agent
|
|
7
|
+
|
|
8
|
+
Vatio keeps the contract and the procedure on the platform, so they are never
|
|
9
|
+
out of date here. Read them first:
|
|
10
|
+
|
|
11
|
+
```bash
|
|
12
|
+
npx @vatio-ai/cli docs
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
The section **For coding agents → Starting a new agent** is the procedure;
|
|
16
|
+
follow it, it takes precedence over the summary below. The rest of that
|
|
17
|
+
output is the contract for `vatio.yml`, tools, knowledge and the CLI.
|
|
18
|
+
|
|
19
|
+
In short:
|
|
20
|
+
|
|
21
|
+
1. If a `vatio.yml` exists at or above the current directory, work in that
|
|
22
|
+
workspace and keep its slug.
|
|
23
|
+
2. Before writing anything, ask the owner briefly: what the business does,
|
|
24
|
+
what the agent must never say, when it must hand off to a person, and which
|
|
25
|
+
of their systems it should read from. Do not invent business facts.
|
|
26
|
+
3. `vatio init SLUG` in the repository the agent belongs in, then write
|
|
27
|
+
`vatio.yml` (and `tools/` for their APIs).
|
|
28
|
+
4. `vatio diff`, `vatio push`, then try it with `vatio chat` —
|
|
29
|
+
including a conversation that should hand off.
|
|
30
|
+
5. Give them the link `vatio push` prints after `Try it:` — the console's
|
|
31
|
+
Test screen, with web chat, WhatsApp and Instagram — with what you tried.
|
|
32
|
+
Publish with `vatio publish` only when they ask.
|
|
33
|
+
6. If an error or the docs left you guessing, say so before you finish:
|
|
34
|
+
`vatio feedback "what you were doing and what was missing"`.
|
|
35
|
+
|
|
36
|
+
`vatio` is `npx @vatio-ai/cli` when it is not installed globally. The first
|
|
37
|
+
`vatio push` signs the developer in: it opens the browser on their machine
|
|
38
|
+
(if it doesn't, give them the link it prints). Tell them to sign in with
|
|
39
|
+
email, Google or GitHub and check that the code on the page matches the one
|
|
40
|
+
the terminal printed. If the command times out waiting, run it again after
|
|
41
|
+
they have signed in: it picks up the same sign-in page.
|