@yaakapp/cli 0.4.0-beta.9 β 0.4.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/README.md +48 -54
- package/package.json +7 -7
- package/prepublish.js +2 -2
package/README.md
CHANGED
|
@@ -1,72 +1,66 @@
|
|
|
1
|
-
|
|
2
|
-
<a href="https://github.com/JamesIves/github-sponsors-readme-action">
|
|
3
|
-
<img width="200px" src="https://github.com/mountain-loop/yaak/raw/main/crates-tauri/yaak-app/icons/icon.png">
|
|
4
|
-
</a>
|
|
5
|
-
</p>
|
|
1
|
+
# Yaak CLI
|
|
6
2
|
|
|
7
|
-
|
|
8
|
-
π« Yaak β Desktop API Client π«
|
|
9
|
-
</h1>
|
|
3
|
+
The `yaak` CLI for publishing plugins and creating/updating/sending requests.
|
|
10
4
|
|
|
11
|
-
|
|
12
|
-
A fast, privacy-first API client for REST, GraphQL, SSE, WebSocket, and gRPC β built with Tauri, Rust, and React.
|
|
13
|
-
</p>
|
|
14
|
-
<p align="center">
|
|
15
|
-
Development is funded by community-purchased <a href="https://yaak.app/pricing">licenses</a>. You can also <a href="https://github.com/sponsors/gschier">become a sponsor</a> to have your logo appear below. π
|
|
16
|
-
</p>
|
|
17
|
-
<br>
|
|
5
|
+
## Installation
|
|
18
6
|
|
|
7
|
+
```sh
|
|
8
|
+
npm install @yaakapp/cli
|
|
9
|
+
```
|
|
19
10
|
|
|
11
|
+
## Agentic Workflows
|
|
20
12
|
|
|
21
|
-
|
|
22
|
-
<!-- sponsors-premium --><a href="https://github.com/MVST-Solutions"><img src="https://github.com/MVST-Solutions.png" width="80px" alt="User avatar: MVST-Solutions" /></a> <a href="https://github.com/dharsanb"><img src="https://github.com/dharsanb.png" width="80px" alt="User avatar: dharsanb" /></a> <a href="https://github.com/railwayapp"><img src="https://github.com/railwayapp.png" width="80px" alt="User avatar: railwayapp" /></a> <a href="https://github.com/caseyamcl"><img src="https://github.com/caseyamcl.png" width="80px" alt="User avatar: caseyamcl" /></a> <a href="https://github.com/bytebase"><img src="https://github.com/bytebase.png" width="80px" alt="User avatar: bytebase" /></a> <a href="https://github.com/"><img src="https://raw.githubusercontent.com/JamesIves/github-sponsors-readme-action/dev/.github/assets/placeholder.png" width="80px" alt="User avatar: " /></a> <!-- sponsors-premium -->
|
|
23
|
-
</p>
|
|
24
|
-
<p align="center">
|
|
25
|
-
<!-- sponsors-base --><a href="https://github.com/seanwash"><img src="https://github.com/seanwash.png" width="50px" alt="User avatar: seanwash" /></a> <a href="https://github.com/jerath"><img src="https://github.com/jerath.png" width="50px" alt="User avatar: jerath" /></a> <a href="https://github.com/itsa-sh"><img src="https://github.com/itsa-sh.png" width="50px" alt="User avatar: itsa-sh" /></a> <a href="https://github.com/dmmulroy"><img src="https://github.com/dmmulroy.png" width="50px" alt="User avatar: dmmulroy" /></a> <a href="https://github.com/timcole"><img src="https://github.com/timcole.png" width="50px" alt="User avatar: timcole" /></a> <a href="https://github.com/VLZH"><img src="https://github.com/VLZH.png" width="50px" alt="User avatar: VLZH" /></a> <a href="https://github.com/terasaka2k"><img src="https://github.com/terasaka2k.png" width="50px" alt="User avatar: terasaka2k" /></a> <a href="https://github.com/andriyor"><img src="https://github.com/andriyor.png" width="50px" alt="User avatar: andriyor" /></a> <a href="https://github.com/majudhu"><img src="https://github.com/majudhu.png" width="50px" alt="User avatar: majudhu" /></a> <a href="https://github.com/axelrindle"><img src="https://github.com/axelrindle.png" width="50px" alt="User avatar: axelrindle" /></a> <a href="https://github.com/jirizverina"><img src="https://github.com/jirizverina.png" width="50px" alt="User avatar: jirizverina" /></a> <a href="https://github.com/chip-well"><img src="https://github.com/chip-well.png" width="50px" alt="User avatar: chip-well" /></a> <a href="https://github.com/GRAYAH"><img src="https://github.com/GRAYAH.png" width="50px" alt="User avatar: GRAYAH" /></a> <a href="https://github.com/flashblaze"><img src="https://github.com/flashblaze.png" width="50px" alt="User avatar: flashblaze" /></a> <!-- sponsors-base -->
|
|
26
|
-
</p>
|
|
13
|
+
The `yaak` CLI is primarily meant to be used by AI agents, and has the following features:
|
|
27
14
|
|
|
28
|
-
|
|
15
|
+
- `schema` subcommands to get the JSON Schema for any model (eg. `yaak request schema http`)
|
|
16
|
+
- `--json '{...}'` input format to create and update data
|
|
17
|
+
- `--verbose` mode for extracting debug info while sending requests
|
|
18
|
+
- The ability to send entire workspaces and folders (Supports `--parallel` and `--fail-fast`)
|
|
29
19
|
|
|
20
|
+
### Example Prompts
|
|
30
21
|
|
|
31
|
-
|
|
22
|
+
Use the `yaak` CLI with agents like Claude or Codex to do useful things for you.
|
|
32
23
|
|
|
33
|
-
|
|
34
|
-
Built with [Tauri](https://tauri.app), Rust, and React, itβs fast, lightweight, and private. No telemetry, no VC funding, and no cloud lock-in.
|
|
24
|
+
Here are some example prompts:
|
|
35
25
|
|
|
26
|
+
```text
|
|
27
|
+
Scan my API routes and create a workspace (using yaak cli) with
|
|
28
|
+
all the requests needed for me to do manual testing?
|
|
29
|
+
```
|
|
36
30
|
|
|
37
|
-
|
|
31
|
+
```text
|
|
32
|
+
Send all the GraphQL requests in my workspace
|
|
33
|
+
```
|
|
38
34
|
|
|
39
|
-
|
|
40
|
-
- Send requests via REST, GraphQL, gRPC, WebSocket, or Server-Sent Events.
|
|
41
|
-
- Filter and inspect responses with JSONPath or XPath.
|
|
35
|
+
## Description
|
|
42
36
|
|
|
43
|
-
|
|
44
|
-
- Use OAuth 2.0, JWT, Basic Auth, or custom plugins for authentication.
|
|
45
|
-
- Secure sensitive values with encrypted secrets.
|
|
46
|
-
- Store secrets in your OS keychain.
|
|
37
|
+
Here's the current print of `yaak --help`
|
|
47
38
|
|
|
48
|
-
|
|
49
|
-
-
|
|
50
|
-
- Use environment variables to switch between dev, staging, and prod.
|
|
51
|
-
- Mirror workspaces to your filesystem for versioning in Git or syncing with Dropbox.
|
|
39
|
+
```text
|
|
40
|
+
Yaak CLI - API client from the command line
|
|
52
41
|
|
|
53
|
-
|
|
54
|
-
- Insert dynamic values like UUIDs or timestamps with template tags.
|
|
55
|
-
- Pick from built-in themes or build your own.
|
|
56
|
-
- Create plugins to extend authentication, template tags, or the UI.
|
|
42
|
+
Usage: yaak [OPTIONS] <COMMAND>
|
|
57
43
|
|
|
44
|
+
Commands:
|
|
45
|
+
auth Authentication commands
|
|
46
|
+
plugin Plugin development and publishing commands
|
|
47
|
+
send Send a request, folder, or workspace by ID
|
|
48
|
+
workspace Workspace commands
|
|
49
|
+
request Request commands
|
|
50
|
+
folder Folder commands
|
|
51
|
+
environment Environment commands
|
|
58
52
|
|
|
59
|
-
|
|
53
|
+
Options:
|
|
54
|
+
--data-dir <DATA_DIR> Use a custom data directory
|
|
55
|
+
-e, --environment <ENVIRONMENT> Environment ID to use for variable substitution
|
|
56
|
+
-v, --verbose Enable verbose send output (events and streamed response body)
|
|
57
|
+
--log [<LEVEL>] Enable CLI logging; optionally set level (error|warn|info|debug|trace) [possible values: error, warn, info, debug, trace]
|
|
58
|
+
-h, --help Print help
|
|
59
|
+
-V, --version Print version
|
|
60
60
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
- [Feedback and Bug Reports](https://feedback.yaak.app)
|
|
69
|
-
- [Documentation](https://yaak.app/docs)
|
|
70
|
-
- [Yaak vs Postman](https://yaak.app/alternatives/postman)
|
|
71
|
-
- [Yaak vs Bruno](https://yaak.app/alternatives/bruno)
|
|
72
|
-
- [Yaak vs Insomnia](https://yaak.app/alternatives/insomnia)
|
|
61
|
+
Agent Hints:
|
|
62
|
+
- Template variable syntax is ${[ my_var ]}, not {{ ... }}
|
|
63
|
+
- Template function syntax is ${[ namespace.my_func(a='aaa',b='bbb') ]}
|
|
64
|
+
- View JSONSchema for models before creating or updating (eg. `yaak request schema http`)
|
|
65
|
+
- Deletion requires confirmation (--yes for non-interactive environments)
|
|
66
|
+
```
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@yaakapp/cli",
|
|
3
|
-
"version": "0.4.0
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"main": "./index.js",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -15,11 +15,11 @@
|
|
|
15
15
|
"yaakcli": "bin/cli.js"
|
|
16
16
|
},
|
|
17
17
|
"optionalDependencies": {
|
|
18
|
-
"@yaakapp/cli-darwin-x64": "0.4.0
|
|
19
|
-
"@yaakapp/cli-darwin-arm64": "0.4.0
|
|
20
|
-
"@yaakapp/cli-linux-arm64": "0.4.0
|
|
21
|
-
"@yaakapp/cli-linux-x64": "0.4.0
|
|
22
|
-
"@yaakapp/cli-win32-x64": "0.4.0
|
|
23
|
-
"@yaakapp/cli-win32-arm64": "0.4.0
|
|
18
|
+
"@yaakapp/cli-darwin-x64": "0.4.0",
|
|
19
|
+
"@yaakapp/cli-darwin-arm64": "0.4.0",
|
|
20
|
+
"@yaakapp/cli-linux-arm64": "0.4.0",
|
|
21
|
+
"@yaakapp/cli-linux-x64": "0.4.0",
|
|
22
|
+
"@yaakapp/cli-win32-x64": "0.4.0",
|
|
23
|
+
"@yaakapp/cli-win32-arm64": "0.4.0"
|
|
24
24
|
}
|
|
25
25
|
}
|
package/prepublish.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const fs = require("node:fs");
|
|
2
2
|
const path = require("node:path");
|
|
3
3
|
|
|
4
|
-
const
|
|
5
|
-
fs.copyFileSync(
|
|
4
|
+
const cliReadme = path.join(__dirname, "..", "..", "crates-cli", "yaak-cli", "README.md");
|
|
5
|
+
fs.copyFileSync(cliReadme, path.join(__dirname, "README.md"));
|