@zibby/skills 0.1.25 → 0.1.27

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.
@@ -0,0 +1,176 @@
1
+ ---
2
+ sidebar_position: 7
3
+ title: "@zibby/mcp-cli"
4
+ ---
5
+
6
+ # @zibby/mcp-cli
7
+
8
+ A Model Context Protocol (MCP) server that exposes the Zibby CLI surface — deploy, run, debug, trigger — to any MCP-aware AI agent. Install once, drive Zibby from Claude Code / Cursor / OpenAI Codex / Gemini CLI / Continue / Cline / Aider / Goose without leaving chat.
9
+
10
+ ```bash
11
+ # Not installed manually — the agent's `npx` invocation handles it.
12
+ # See "Install" below for per-agent config.
13
+ ```
14
+
15
+ ## What it exposes
16
+
17
+ 13 MCP tools, all wrapping the underlying `@zibby/cli`:
18
+
19
+ | Tool | What it does |
20
+ |---|---|
21
+ | `zibby_login` | Opens the user's browser for device-code OAuth. Saves session to `~/.zibby/config.json`. |
22
+ | `zibby_logout` | Clears the saved session. |
23
+ | `zibby_status` | Who is logged in, how many projects are cached, whether the session is still valid. |
24
+ | `zibby_list_projects` | List the Zibby projects the user has access to. |
25
+ | `zibby_list_templates` | List official workflow templates (browser-test-automation, code-analysis, generate-test-cases, …). |
26
+ | `zibby_scaffold_workflow` | Scaffold `.zibby/workflows/<name>/` from an official template. |
27
+ | `zibby_validate_workflow` | Static-check a local workflow (~30 ms, no API call). |
28
+ | `zibby_list_workflows` | List workflows: local, remote, or both. |
29
+ | `zibby_deploy_workflow` | Deploy a local workflow to a project. |
30
+ | `zibby_trigger_workflow` | Trigger a deployed workflow by UUID. Returns `jobId`. |
31
+ | `zibby_workflow_logs` | Fetch the latest N log lines from a run (one-shot — call again for newer lines). |
32
+ | `zibby_run_workflow_local` | Run a workflow on the user's machine one-shot, for debugging. No cloud. |
33
+ | `zibby_download_workflow` | Pull a deployed workflow back to local. Requires explicit `confirm: true` from the agent. |
34
+
35
+ **Destructive operations are intentionally not exposed.** Workflow deletion, env-var mutation, schedule changes, and credential management stay in the `zibby` CLI directly. The agent has to involve the user out-of-band for those.
36
+
37
+ ## Install
38
+
39
+ `@zibby/mcp-cli` ships as a stdio MCP server. The agent's host process spawns it via `npx -y` — no global install needed. The user just needs **Node.js ≥ 18** on their machine.
40
+
41
+ ### Claude Code
42
+
43
+ `~/.claude/settings.json`:
44
+
45
+ ```json
46
+ {
47
+ "mcpServers": {
48
+ "zibby": {
49
+ "command": "npx",
50
+ "args": ["-y", "@zibby/mcp-cli"]
51
+ }
52
+ }
53
+ }
54
+ ```
55
+
56
+ ### Cursor
57
+
58
+ `~/.cursor/mcp.json`:
59
+
60
+ ```json
61
+ {
62
+ "mcpServers": {
63
+ "zibby": {
64
+ "command": "npx",
65
+ "args": ["-y", "@zibby/mcp-cli"]
66
+ }
67
+ }
68
+ }
69
+ ```
70
+
71
+ ### OpenAI Codex CLI
72
+
73
+ `~/.codex/config.toml`:
74
+
75
+ ```toml
76
+ [mcp_servers.zibby]
77
+ command = "npx"
78
+ args = ["-y", "@zibby/mcp-cli"]
79
+ ```
80
+
81
+ ### Gemini CLI
82
+
83
+ `~/.gemini/settings.json`:
84
+
85
+ ```json
86
+ {
87
+ "mcpServers": {
88
+ "zibby": {
89
+ "command": "npx",
90
+ "args": ["-y", "@zibby/mcp-cli"]
91
+ }
92
+ }
93
+ }
94
+ ```
95
+
96
+ ### Claude Desktop (macOS)
97
+
98
+ `~/Library/Application Support/Claude/claude_desktop_config.json`:
99
+
100
+ ```json
101
+ {
102
+ "mcpServers": {
103
+ "zibby": {
104
+ "command": "npx",
105
+ "args": ["-y", "@zibby/mcp-cli"]
106
+ }
107
+ }
108
+ }
109
+ ```
110
+
111
+ ### Windows
112
+
113
+ If your agent on Windows can't find `npx`, wrap with `cmd /c`:
114
+
115
+ ```json
116
+ {
117
+ "mcpServers": {
118
+ "zibby": {
119
+ "command": "cmd",
120
+ "args": ["/c", "npx", "-y", "@zibby/mcp-cli"]
121
+ }
122
+ }
123
+ }
124
+ ```
125
+
126
+ ## A typical agent chat
127
+
128
+ ```
129
+ User: Deploy the browser-test template to my "playhouse" project.
130
+ Agent: → zibby_list_projects
131
+ → zibby_scaffold_workflow (browser-test-automation → .zibby/workflows/playhouse-tests/)
132
+ → zibby_validate_workflow
133
+ → zibby_deploy_workflow
134
+ → "Deployed v1 of playhouse-tests. UUID 988…"
135
+
136
+ User: Run it against staging.zibby.dev.
137
+ Agent: → zibby_trigger_workflow (input: { url: "https://staging.zibby.dev" })
138
+ → zibby_workflow_logs (lines: 200, jobId: "abc-123")
139
+ → "Run completed. Found 0 errors."
140
+ ```
141
+
142
+ ## Auth model
143
+
144
+ Two-stage by design (mirrors how the `zibby` CLI works):
145
+
146
+ 1. **Session token** (`zibby_login`) — device-code OAuth via browser. Identifies the user.
147
+ 2. **Per-project API tokens** — fetched at login time and cached locally. The MCP server picks the right token automatically when you call a project-scoped tool like `zibby_deploy_workflow`.
148
+
149
+ All credentials live in `~/.zibby/config.json` (mode `0600`). The same file `zibby login` writes — so if you've already done `zibby login` from a terminal, the MCP server picks up that session.
150
+
151
+ The user's password never touches the MCP server: login is OAuth in the browser, and only the resulting session token comes back to the local file.
152
+
153
+ ## Security guarantees
154
+
155
+ - **No shell interpolation** — every CLI invocation uses `execFile` with argv arrays.
156
+ - **Minimum env passthrough** — only `HOME`, `USER`, `PATH`, and the project-scoped `ZIBBY_API_KEY` reach the child CLI process.
157
+ - **API tokens never returned to the agent** — they live in `~/.zibby/config.json` only, read server-side per call.
158
+ - **Destructive ops excluded** — see the table above.
159
+ - **`zibby_download_workflow` requires `confirm: true`** — the schema rejects calls without it. Agents must explicitly opt in after confirming the destination path with the user.
160
+
161
+ ## Troubleshooting
162
+
163
+ | Problem | Likely cause |
164
+ |---|---|
165
+ | `Not logged in` on every call | `~/.zibby/config.json` missing or corrupted. Call `zibby_login`. |
166
+ | `No API token cached for project` | Project list out of date. Call `zibby_list_projects` to refresh. |
167
+ | `npx -y` hangs on first install | First-time download. Subsequent invocations are cached by npm. |
168
+ | Tool times out on long deploys | The wrapped CLI command exceeded 10 min. Re-run from a terminal to see live output. |
169
+
170
+ ## Versioning
171
+
172
+ `@zibby/mcp-cli` pins a specific `@zibby/cli` version in its `dependencies`. Upgrading the MCP package upgrades the bundled CLI in lockstep. Users get the right CLI automatically — no need to coordinate two installs.
173
+
174
+ ## Source
175
+
176
+ [github.com/ZibbyHQ/zibby-agent → packages/mcps/cli](https://github.com/ZibbyHQ/zibby-agent/tree/main/packages/mcps/cli)
@@ -185,6 +185,6 @@ For workflows triggered remotely (rather than per-CI-run), use [`workflow trigge
185
185
 
186
186
  ## See also
187
187
 
188
- - [Recipes overview](./index)
188
+ - [Recipes overview](./)
189
189
  - [Concepts: graph](../concepts/graph) — the primitives this recipe uses
190
190
  - [Cloud triggering](../cloud/triggering) — fire workflows from CI/CD
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zibby/skills",
3
- "version": "0.1.25",
3
+ "version": "0.1.27",
4
4
  "description": "Built-in skill definitions for Zibby test automation framework",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -8,6 +8,7 @@
8
8
  ".": "./dist/index.js",
9
9
  "./bin/mcp-sentry.mjs": "./bin/mcp-sentry.mjs",
10
10
  "./bin/mcp-lark.mjs": "./bin/mcp-lark.mjs",
11
+ "./bin/mcp-slack.mjs": "./bin/mcp-slack.mjs",
11
12
  "./browser": "./dist/browser.js",
12
13
  "./jira": "./dist/jira.js",
13
14
  "./github": "./dist/github.js",
@@ -15,7 +16,10 @@
15
16
  "./lark": "./dist/lark.js",
16
17
  "./memory": "./dist/memory.js",
17
18
  "./function": "./dist/function-skill.js",
18
- "./integrations": "./dist/integrations.js"
19
+ "./integrations": "./dist/integrations.js",
20
+ "./report": "./dist/report.js",
21
+ "./llm-billing": "./dist/llm-billing.js",
22
+ "./sentry": "./dist/sentry.js"
19
23
  },
20
24
  "scripts": {
21
25
  "build": "node ../scripts/build.mjs",
@@ -35,10 +39,10 @@
35
39
  "homepage": "https://zibby.dev",
36
40
  "repository": {
37
41
  "type": "git",
38
- "url": "https://github.com/ZibbyHQ/zibby-agent"
42
+ "url": "https://github.com/ZibbyHQ/skills"
39
43
  },
40
44
  "bugs": {
41
- "url": "https://github.com/ZibbyHQ/zibby-agent/issues"
45
+ "url": "https://github.com/ZibbyHQ/skills/issues"
42
46
  },
43
47
  "files": [
44
48
  "dist/",
@@ -63,6 +67,9 @@
63
67
  "@zibby/mcp-memory": "*"
64
68
  },
65
69
  "devDependencies": {
66
- "esbuild": "^0.28.0"
70
+ "@eslint/js": "^10.0.1",
71
+ "esbuild": "^0.28.0",
72
+ "eslint": "^10.0.2",
73
+ "globals": "^17.4.0"
67
74
  }
68
75
  }