@zeyos/client 0.1.0 → 0.1.1
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/CHANGELOG.md +19 -0
- package/README.md +21 -4
- package/docs/02-javascript-client/01-getting-started.md +15 -0
- package/docs/03-cli/01-getting-started.md +3 -2
- package/docs/03-cli/02-commands.md +30 -6
- package/docs/04-agent-workflows/01-agent-quickstart.md +2 -1
- package/docs/intro.md +1 -1
- package/package.json +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -3,6 +3,25 @@
|
|
|
3
3
|
Notable changes to `@zeyos/client` and `@zeyos/cli`. This project follows
|
|
4
4
|
[Semantic Versioning](https://semver.org/).
|
|
5
5
|
|
|
6
|
+
## 0.1.1
|
|
7
|
+
|
|
8
|
+
### `@zeyos/client`
|
|
9
|
+
- `oauth2.buildAuthorizationUrl()` now includes the `scope` parameter when provided (previously dropped).
|
|
10
|
+
- Retry timing hardened: an empty/whitespace `Retry-After` header falls back to exponential backoff instead of retrying instantly, and an already-aborted signal reliably stops a zero-delay retry.
|
|
11
|
+
- `normalizeListResult()` preserves a numeric-string `count` (e.g. `"17"`), matching `normalizeCountResult()`.
|
|
12
|
+
|
|
13
|
+
### `@zeyos/cli` (`zeyos`)
|
|
14
|
+
- Added `--version` / `-v`.
|
|
15
|
+
- Fixed the `--key=value` argument form, which was previously parsed as an unknown flag and silently ignored (e.g. `--filter='{...}'`).
|
|
16
|
+
- YAML output now quotes ambiguous scalar strings (`true`, `false`, `null`, `yes`/`no`, and numeric-looking strings) so downstream YAML parsers don't re-interpret them.
|
|
17
|
+
- `describe`, `resources`, and `skills` help text now documents the global `--json` / `--yaml` / `--help` options.
|
|
18
|
+
- `skills install` reworked into a multi-agent installer: targets `claude`, `codex`, `opencode`, `droid`, `pi`, and a generic `agents` layout; adds `--global`/`--local` scope, `--dir <path>` for an explicit directory, an interactive agent/scope picker (with a ZeyOS banner) when run bare, `-y`/`--yes` and `--no-logo` to skip prompts/banner, and a `--json`/`--yaml` install summary.
|
|
19
|
+
- `login` now prints the local callback URL before prompting for the application ID/secret, so it can be registered as the OAuth app's redirect URI.
|
|
20
|
+
|
|
21
|
+
### Docs
|
|
22
|
+
- Rewrote the top-level `README.md` into a full guide with CLI, JavaScript client, login/OAuth, and coding-agent examples.
|
|
23
|
+
- Documentation accuracy fixes: accounts use `lastname` (no `name` field); updates accept the flat `{ ID, ...fields }` form (explicit `body` optional); clarified that the schema's `(required)` marker means `NOT NULL` (most such fields have defaults — `currency` on accounts is the real exception); fixed cross-links and a duplicate tutorial sidebar prefix.
|
|
24
|
+
|
|
6
25
|
## 0.1.0 — Initial release
|
|
7
26
|
|
|
8
27
|
### `@zeyos/client`
|
package/README.md
CHANGED
|
@@ -202,7 +202,7 @@ zeyos <command> [options] [args…]
|
|
|
202
202
|
| `delete <resource> <id>` | Delete a record (`rm`/`remove` aliases) | `zeyos delete ticket 42 --force` |
|
|
203
203
|
| `resources` | List resource types the CLI exposes | `zeyos resources --json` |
|
|
204
204
|
| `describe <resource>` | Show a resource's fields, types and enums | `zeyos describe ticket` |
|
|
205
|
-
| `skills <list\|show\|install>` | Manage bundled coding-agent skills | `zeyos skills install --target claude` |
|
|
205
|
+
| `skills <list\|show\|install>` | Manage bundled coding-agent skills | `zeyos skills install --target claude --global` |
|
|
206
206
|
|
|
207
207
|
**Global options** (work on every command): `--json`, `--yaml`, `--no-color`, `-h/--help`, `-v/--version`.
|
|
208
208
|
|
|
@@ -351,11 +351,28 @@ ZeyOS ships **agent skills** — curated instructions and query playbooks that t
|
|
|
351
351
|
|
|
352
352
|
```bash
|
|
353
353
|
zeyos skills list # see what's available
|
|
354
|
-
zeyos skills install
|
|
355
|
-
zeyos skills install
|
|
354
|
+
zeyos skills install # interactive: pick an agent, then local vs. global
|
|
355
|
+
zeyos skills install --target claude --global # or skip the prompts with flags
|
|
356
|
+
zeyos skills install zeyos-work-management # install just one skill
|
|
356
357
|
```
|
|
357
358
|
|
|
358
|
-
|
|
359
|
+
Run bare, `install` shows the ZeyOS banner and asks **(a)** which coding agent to target and **(b)** whether to install for this project or globally. Flags skip the prompts:
|
|
360
|
+
|
|
361
|
+
- `--target <agent>` — `claude`, `codex`, `opencode`, `droid`, `pi`, or `agents` (auto-detected when omitted)
|
|
362
|
+
- `--global` / `--local` — install into the agent's home directory or just this project (default `--local`)
|
|
363
|
+
- `--dir <path>` — install into any directory you choose (overrides `--target`)
|
|
364
|
+
- `-y`/`--yes` — skip all prompts and use flags + defaults (also implied when piped non-interactively)
|
|
365
|
+
|
|
366
|
+
| Agent | local | global |
|
|
367
|
+
|-------|-------|--------|
|
|
368
|
+
| `claude` | `.claude/skills/` | `~/.claude/skills/` |
|
|
369
|
+
| `codex` | `.codex/skills/` | `~/.codex/skills/` |
|
|
370
|
+
| `opencode` | `.opencode/skills/` | `~/.config/opencode/skills/` |
|
|
371
|
+
| `droid` | `.factory/skills/` | `~/.factory/skills/` |
|
|
372
|
+
| `pi` | `.pi/skills/` | `~/.pi/agent/skills/` |
|
|
373
|
+
| `agents` | `.agents/skills/` | `~/.agents/skills/` |
|
|
374
|
+
|
|
375
|
+
Shared reference docs are installed alongside so the skills' cross-links resolve. Point your agent at the install directory.
|
|
359
376
|
|
|
360
377
|
Bundled skills:
|
|
361
378
|
|
|
@@ -65,6 +65,21 @@ The returned `client` object exposes:
|
|
|
65
65
|
- **`client.auth`** -- Token management (`getTokenSet`, `setTokenSet`, `clearTokenSet`)
|
|
66
66
|
- **`client.metadata`** -- Read-only info about the generated client (`generatedAt` timestamp, `services` array)
|
|
67
67
|
|
|
68
|
+
Alongside the `createZeyosClient` factory, the package exports a few named helpers and error types you can import directly:
|
|
69
|
+
|
|
70
|
+
```js
|
|
71
|
+
import {
|
|
72
|
+
createZeyosClient,
|
|
73
|
+
MemoryTokenStore, // in-memory token store (or implement get()/set() yourself)
|
|
74
|
+
ZeyosApiError, // thrown on non-2xx responses
|
|
75
|
+
ZeyosValidationError, // thrown by pre-flight validation (validate: true)
|
|
76
|
+
normalizeListResult, // normalise a list response to { data, count? }
|
|
77
|
+
normalizeCountResult, // normalise a count response to a number
|
|
78
|
+
normalizeTokenSet, // normalise a raw token object to a TokenSet
|
|
79
|
+
tokenResponseToTokenSet, // map an OAuth token response to a TokenSet
|
|
80
|
+
} from '@zeyos/client';
|
|
81
|
+
```
|
|
82
|
+
|
|
68
83
|
## Platform Configuration
|
|
69
84
|
|
|
70
85
|
The `platform` option tells the client where your ZeyOS instance lives. There are three ways to specify it:
|
|
@@ -118,11 +118,12 @@ zeyos describe accounts --json
|
|
|
118
118
|
|
|
119
119
|
## Install Agent Skills
|
|
120
120
|
|
|
121
|
-
If you are driving the CLI from a coding agent (Claude, Codex, …), install the bundled ZeyOS skill packs
|
|
121
|
+
If you are driving the CLI from a coding agent (Claude Code, Codex, opencode, Factory Droid, pi, …), install the bundled ZeyOS skill packs so the agent picks up the right query conventions:
|
|
122
122
|
|
|
123
123
|
```bash
|
|
124
124
|
zeyos skills list # see the available skills
|
|
125
|
-
zeyos skills install #
|
|
125
|
+
zeyos skills install # interactive: pick an agent, then local vs. global
|
|
126
|
+
zeyos skills install --target claude --global # or skip the prompts with flags
|
|
126
127
|
```
|
|
127
128
|
|
|
128
129
|
See the [Commands Reference](./02-commands.md#skills) for details.
|
|
@@ -370,7 +370,7 @@ Foreign keys are shown as `→ <table>`, and enum fields list their valid values
|
|
|
370
370
|
|
|
371
371
|
## skills
|
|
372
372
|
|
|
373
|
-
Discover and install the bundled ZeyOS agent skill packs into
|
|
373
|
+
Discover and install the bundled ZeyOS agent skill packs into any coding agent, so the agent (Claude Code, Codex, opencode, Factory Droid, pi, …) operates against ZeyOS with the right conventions out of the box.
|
|
374
374
|
|
|
375
375
|
```
|
|
376
376
|
# List the bundled skills
|
|
@@ -379,19 +379,43 @@ zeyos skills list
|
|
|
379
379
|
# Print a skill's instructions
|
|
380
380
|
zeyos skills show zeyos-work-management
|
|
381
381
|
|
|
382
|
-
# Install
|
|
382
|
+
# Install — interactive: pick a coding agent, then local vs. global
|
|
383
383
|
zeyos skills install
|
|
384
|
-
|
|
384
|
+
|
|
385
|
+
# Install non-interactively with flags
|
|
386
|
+
zeyos skills install --target claude --global # all projects
|
|
387
|
+
zeyos skills install --target opencode --local # this project only
|
|
388
|
+
zeyos skills install zeyos-billing-insights -y # one skill, defaults
|
|
389
|
+
zeyos skills install --dir ./vendor/skills # any directory
|
|
385
390
|
```
|
|
386
391
|
|
|
392
|
+
Run bare, `install` prints the ZeyOS banner and prompts for **(a)** which coding agent to target and **(b)** whether to install for this project or globally for every project. Pass `--target` and/or `--global`/`--local` to skip the matching prompt; pass `-y`/`--yes` (or pipe non-interactively) to skip all prompts and use flags plus sensible defaults.
|
|
393
|
+
|
|
387
394
|
Options for `install`:
|
|
388
395
|
|
|
389
396
|
| Option | Description |
|
|
390
397
|
|--------|-------------|
|
|
391
|
-
| `--target claude
|
|
398
|
+
| `--target <agent>` | Coding agent: `claude`, `codex`, `opencode`, `droid`, `pi`, `agents` (prompted when omitted; otherwise auto-detected) |
|
|
399
|
+
| `--global` | Install into the agent's home directory (all projects) |
|
|
400
|
+
| `--local` | Install into the current project (default) |
|
|
401
|
+
| `--dir <path>` | Install into an explicit directory (overrides `--target`) |
|
|
392
402
|
| `--force` | Overwrite existing skill folders |
|
|
393
|
-
|
|
394
|
-
|
|
403
|
+
| `-y`, `--yes` | Skip prompts and use flags / sensible defaults |
|
|
404
|
+
| `--no-logo` | Don't print the ZeyOS banner |
|
|
405
|
+
| `--json` / `--yaml` | Print a machine-readable install summary (also silences the banner) |
|
|
406
|
+
|
|
407
|
+
Per-agent skill directories:
|
|
408
|
+
|
|
409
|
+
| Agent | `--local` | `--global` |
|
|
410
|
+
|-------|-----------|------------|
|
|
411
|
+
| `claude` | `.claude/skills/` | `~/.claude/skills/` |
|
|
412
|
+
| `codex` | `.codex/skills/` | `~/.codex/skills/` |
|
|
413
|
+
| `opencode` | `.opencode/skills/` | `~/.config/opencode/skills/` |
|
|
414
|
+
| `droid` | `.factory/skills/` | `~/.factory/skills/` |
|
|
415
|
+
| `pi` | `.pi/skills/` | `~/.pi/agent/skills/` |
|
|
416
|
+
| `agents` | `.agents/skills/` | `~/.agents/skills/` |
|
|
417
|
+
|
|
418
|
+
Skills are copied into `<dir>/<name>/`, with the shared reference files installed alongside (`<dir>/shared/`) so the skills' `../shared/…` links resolve.
|
|
395
419
|
|
|
396
420
|
---
|
|
397
421
|
|
|
@@ -29,7 +29,8 @@ Before doing real work, install the bundled skill packs so the agent picks up Ze
|
|
|
29
29
|
|
|
30
30
|
```bash
|
|
31
31
|
zeyos skills list # see what's available
|
|
32
|
-
zeyos skills install #
|
|
32
|
+
zeyos skills install # interactive: pick an agent (claude, codex, opencode, droid, pi…), then local/global
|
|
33
|
+
zeyos skills install --target claude --global -y # or non-interactively with flags
|
|
33
34
|
```
|
|
34
35
|
|
|
35
36
|
This is the recommended entry point for an agent: the skills encode how to resolve names to IDs, which resource to query first, and how to escalate from the CLI to `@zeyos/client`.
|
package/docs/intro.md
CHANGED
|
@@ -88,7 +88,7 @@ Across the CLI, JavaScript client, and sample applications, the same operational
|
|
|
88
88
|
|
|
89
89
|
- Prefer `filters` in JavaScript client code for compatibility across scalar and foreign-key fields.
|
|
90
90
|
- Include `visibility: 0` unless you intentionally want archived or deleted records.
|
|
91
|
-
-
|
|
91
|
+
- For updates, pass changed fields alongside the `ID` directly (`{ ID, status }`) or wrap them in an explicit `body` object (`{ ID, body: { status } }`) — both work; the explicit `body` is only needed to disambiguate a payload field that collides with a reserved control key.
|
|
92
92
|
- Treat `extdata` and `expand` as separate features:
|
|
93
93
|
- `extdata` includes custom fields
|
|
94
94
|
- `expand` inlines JSON or binary columns
|