@scribed/cli 0.1.34 → 0.1.36
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/LICENSE +51 -24
- package/README.md +25 -2
- package/dist/index.js +8834 -2754
- package/dist/mcp/server.js +3571 -1569
- package/package.json +5 -5
package/LICENSE
CHANGED
|
@@ -1,24 +1,51 @@
|
|
|
1
|
-
Copyright (c) 2025
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
1
|
+
Copyright (c) 2025-2026 Q6 Technology Holdings, Inc. and its wholly-owned
|
|
2
|
+
subsidiary Scribed Works, Inc.
|
|
3
|
+
2261 Market Street, Suite 22871, San Francisco, CA 94114
|
|
4
|
+
All Rights Reserved.
|
|
5
|
+
|
|
6
|
+
PROPRIETARY AND CONFIDENTIAL - NOT OPEN SOURCE
|
|
7
|
+
|
|
8
|
+
This software, including without limitation its source code, object code,
|
|
9
|
+
documentation, designs, specifications, assets and all associated files (the
|
|
10
|
+
"Software"), is the proprietary and confidential property of Q6 Technology
|
|
11
|
+
Holdings, Inc., a Delaware corporation ("Q6"), and Scribed Works, Inc., a
|
|
12
|
+
Delaware corporation and wholly-owned subsidiary of Q6 ("Scribed Works"; Q6
|
|
13
|
+
and Scribed Works together, the "Company"). Scribed and the Scribed family of
|
|
14
|
+
products are developed and operated by Scribed Works. Both corporations share
|
|
15
|
+
the San Francisco office above.
|
|
16
|
+
|
|
17
|
+
The Software is NOT licensed under the MIT License or any other open-source,
|
|
18
|
+
free-software or public license. No license or right, express or implied, by
|
|
19
|
+
estoppel or otherwise, is granted by this notice, by publication, or by any
|
|
20
|
+
access to the Software.
|
|
21
|
+
|
|
22
|
+
No part of the Software may be used, copied, reproduced, distributed,
|
|
23
|
+
published, displayed, performed, modified, merged, translated, adapted,
|
|
24
|
+
reverse engineered, decompiled, disassembled, sublicensed, sold, rented,
|
|
25
|
+
leased, lent, hosted for others or otherwise exploited, in whole or in part,
|
|
26
|
+
without the prior express written permission of the Company.
|
|
27
|
+
|
|
28
|
+
Access to this repository, or to any copy of the Software, does not grant any
|
|
29
|
+
rights in it. Any access that the Company authorizes is subject to the written
|
|
30
|
+
agreement under which it was provided and to all confidentiality obligations
|
|
31
|
+
in that agreement.
|
|
32
|
+
|
|
33
|
+
Third-party components included in or used by the Software remain the property
|
|
34
|
+
of their respective owners and are governed solely by their own license terms.
|
|
35
|
+
Their notices are kept beside the corresponding components (for example
|
|
36
|
+
LICENSE.*, NOTICE and THIRD_PARTY_NOTICES files). Those licenses apply only to
|
|
37
|
+
those components; none of them licenses the Software as a whole.
|
|
38
|
+
|
|
39
|
+
Unauthorized use, reproduction or distribution of the Software, or any portion
|
|
40
|
+
of it, is strictly prohibited and may result in severe civil and criminal
|
|
41
|
+
penalties, and will be prosecuted to the maximum extent possible under law.
|
|
42
|
+
|
|
43
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
44
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
45
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
46
|
+
COMPANY, ITS AFFILIATES OR ITS LICENSORS BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
|
47
|
+
OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
|
|
48
|
+
FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS
|
|
49
|
+
IN THE SOFTWARE.
|
|
50
|
+
|
|
51
|
+
For licensing inquiries, contact: hello@scribed.ai
|
package/README.md
CHANGED
|
@@ -5,7 +5,9 @@ Command-line client + MCP server for Scribed — CRM records, phone + texting, i
|
|
|
5
5
|
Verified catalog (2026-10-19): **1,149 external tools across 50 categories**;
|
|
6
6
|
584 tools in 27 categories are included in the default core set. Route
|
|
7
7
|
coverage does not imply full UI parity: session-only actions and the remaining
|
|
8
|
-
option audit are
|
|
8
|
+
option audit are recorded in the maintainers' offline audit inventories, which
|
|
9
|
+
are not part of this package (in the source tree, see
|
|
10
|
+
`scripts/refine-route-changes.ts --routes/--coverage`).
|
|
9
11
|
|
|
10
12
|
## Install
|
|
11
13
|
|
|
@@ -186,6 +188,19 @@ Credentials live in `${XDG_CONFIG_HOME:-~/.config}/scribed/config.json` (directo
|
|
|
186
188
|
|
|
187
189
|
Never put a token in Cursor/Claude MCP configuration — the stdio process reads the private CLI config itself.
|
|
188
190
|
|
|
191
|
+
### Hired worker delegations
|
|
192
|
+
|
|
193
|
+
A hired Scribed worker (a Hermes Agent whose only Scribed access is this CLI with the worker account's `SCRIBED_TOKEN`) receives explicit, revocable access that a human manager configures in the web app. Four commands reach those worker-only routes directly (they are not catalog tools, and only the worker account's bearer session is accepted — never an API key or a browser OAuth sign-in):
|
|
194
|
+
|
|
195
|
+
| Command | What it does |
|
|
196
|
+
| --- | --- |
|
|
197
|
+
| `scribed vault download <path> --grant <id> --revision <n> [--out <file>] [--force]` | Finds the file in the manager's Vault through the grant (`GET …/resources/:grantId/vault?revision=n`), then streams `…/vault/files/:id/download?revision=n` to disk (default: the basename in the current directory; an existing file is never overwritten without `--force`). |
|
|
198
|
+
| `scribed vault upload <file> --grant <id> --revision <n> [--path <vaultPath>] [--mime <type>]` | Uploads a local file (≤ 25 MiB) as `{ path, contentBase64, mime? }` to `POST …/resources/:grantId/vault/upload?revision=n` (path default: the basename at the Vault root). |
|
|
199
|
+
| `scribed exec --grant <id> --revision <n> --env NAME [--env NAME…] -- <cmd> [args…]` | Asks `POST …/resources/:grantId/environment { revision, names }` for exactly the named values and runs the program with them in its environment (stdio inherited). The CLI never prints a value; the exit code is the program's (a signal → exit 1, named on stderr). Put `--` before the program. This is an explicit delegation, not a secrecy sandbox — the program can read its own environment. |
|
|
200
|
+
| `scribed preview serve --port <n> [--name <label>]` | Opens or reuses a preview lease (`POST …/previews`), prints exactly one stdout line `{"viewerUrl","leaseId"}`, then keeps one WebSocket tunnel to the API per epoch (a single-use ticket from `POST …/previews/:leaseId/tunnel-ticket` rides as the second subprotocol; the 101's `X-Preview-Epoch` is the epoch), relaying HTTP and WebSocket traffic to `127.0.0.1:<port>`. A dropped tunnel reconnects with a new ticket after 1 s → 30 s backoff (reset after a connection that lasted ≥ 60 s); a 401 / 403 (or 404 / 410) from the ticket route ends the command with exit 1. SIGTERM / SIGINT close the tunnel, delete the lease and exit 0. State lines go to stderr only. `scribed preview list` / `scribed preview stop <leaseId>` wrap the list and delete routes. |
|
|
201
|
+
|
|
202
|
+
The grant id and revision come from the human manager's resource settings for the worker; the commands refuse to run without them, and the API refuses a stale revision (`agent_resource_revision_conflict`) or a revoked grant (`agent_resource_access_revoked`). The preview relay targets Node (the published runtime); Bun's built-in `ws` shim lacks the handshake events it needs.
|
|
203
|
+
|
|
189
204
|
### CLI updates
|
|
190
205
|
|
|
191
206
|
After a successful interactive command, the CLI checks npm's public `@scribed/cli` latest release at most once every 24 hours and prints one line to stderr when an update is available. The check sends no Scribed credentials or command arguments. It has a 500 ms deadline; offline, malformed, or inaccessible responses stay silent and are also cached for 24 hours. The private cache lives beside the config as `config.json.update-check.json` (or `<SCRIBED_CONFIG_PATH>.update-check.json`).
|
|
@@ -444,6 +459,14 @@ scribed packs install investors [--pages dashboard.metrics] --yes # pack_insta
|
|
|
444
459
|
|
|
445
460
|
scribed vault list # vault_list
|
|
446
461
|
scribed vault read "Proposals/acme.pdf" # vault_read (PDF/DOCX extracted)
|
|
462
|
+
# Hired worker delegations (direct API calls on /api/agent-members/self/*, the worker account's own
|
|
463
|
+
# bearer session only — API keys and browser OAuth are refused; --grant / --revision come from the
|
|
464
|
+
# human manager's resource settings for this worker and every request is pinned to that revision):
|
|
465
|
+
scribed vault download "Docs/brief.pdf" --grant <grantId> --revision 3 [--out brief.pdf] [--force] # the manager's Vault → disk
|
|
466
|
+
scribed vault upload ./report.csv --grant <grantId> --revision 3 [--path Reports/report.csv] [--mime text/csv] # ≤ 25 MiB → the manager's Vault
|
|
467
|
+
scribed exec --grant <grantId> --revision 3 --env STRIPE_API_KEY [--env …] -- node scripts/sync.js # delegated environment values in the child only; exit code propagates
|
|
468
|
+
scribed preview serve --port 5173 [--name storefront] # publish a local dev server: one stdout line {"viewerUrl","leaseId"}, relay until SIGTERM / SIGINT
|
|
469
|
+
scribed preview list | preview stop <leaseId>
|
|
447
470
|
scribed pages list [workspaceId] # workspace_pages_list (selected or current workspace)
|
|
448
471
|
scribed pages search "onboarding" # workspace_pages_search (every workspace)
|
|
449
472
|
scribed pages read <pageId> # workspace_page_read (selected or current workspace)
|
|
@@ -819,7 +842,7 @@ streaming and withholds the final chunk until the length and digest match.
|
|
|
819
842
|
## Development
|
|
820
843
|
|
|
821
844
|
- `bun run test` — catalog adapter, credential modes, MCP registry, auth, config, the command regressions (incl. the end-to-end flows in `src/commands/flows.test.ts` — convert / pipeline / approve / bulk-set / add-kpi against an in-memory API), and the ported frontend rules in `src/lib/` (pipeline-summary, table-summaries, field-roles, csv, run-trace, kpi)
|
|
822
|
-
- `bun run
|
|
845
|
+
- `bun run typecheck` — `tsc --noEmit` (also type-checks the imported scribed-agent registry)
|
|
823
846
|
- `bun run build` — Node-targeted Bun bundle of `src/index.ts` + `src/mcp/server.ts` into `dist/`
|
|
824
847
|
- `bun run verify:bundle` — fails if agent-only server code (Express, AI SDK, worker secrets) leaked into `dist/`
|
|
825
848
|
- `bun run verify:stdio` — exercises the real Node stdio bin/protocol for the core, all, and slug selections
|