@jarel/myskills 0.1.0-beta.2 → 0.1.0-beta.3
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 +119 -4
- package/dist/index.js +4081 -1473
- package/package.json +5 -4
package/README.md
CHANGED
|
@@ -25,11 +25,43 @@ Responsibilities:
|
|
|
25
25
|
- install/export/update/rollback packages
|
|
26
26
|
- submit drafts
|
|
27
27
|
- support maintainer/admin workflows through role-gated API calls
|
|
28
|
+
- inspect an explicitly selected local Codex profile with a read-only metadata observation or health report
|
|
28
29
|
|
|
29
30
|
CLI tokens should be stored in the platform secret store where possible.
|
|
30
31
|
|
|
31
32
|
## Current Slice
|
|
32
33
|
|
|
34
|
+
The command list below describes the beta.3 Phase 2 source and CLI surface. It
|
|
35
|
+
does not claim that the hosted Phase 1 Railway baseline includes these Phase 2
|
|
36
|
+
architecture capabilities; hosted deployment requires a separate production
|
|
37
|
+
promotion and live verification. The beta.2 visibility compatibility shims
|
|
38
|
+
remain available for existing clients.
|
|
39
|
+
|
|
40
|
+
### Beta.3 breaking security changes
|
|
41
|
+
|
|
42
|
+
Beta.3 tightens the API boundary for team and sharing mutations. Team
|
|
43
|
+
creation, team-owner invitation/member lifecycle changes, and
|
|
44
|
+
sharing expansions to team or organization scope require an interactive
|
|
45
|
+
MFA-verified session. Privileged sharing reads/writes and the deprecated
|
|
46
|
+
`skills edit --visibility` alias use the same session/MFA boundary. API tokens
|
|
47
|
+
remain useful for scoped reads, but they cannot perform these mutations.
|
|
48
|
+
|
|
49
|
+
Migration before upgrading to beta.3: enroll TOTP through the API's
|
|
50
|
+
`POST /v1/auth/mfa/totp/enroll` and `POST /v1/auth/mfa/totp/confirm` routes
|
|
51
|
+
with password reauthentication, save the one-time recovery codes, then run
|
|
52
|
+
`myskills login` and complete the `POST /v1/auth/mfa/verify` challenge. Move
|
|
53
|
+
mutation automation to an explicitly managed session; keep API-token
|
|
54
|
+
automation read-only. Invitation acceptance remains session-only where the API
|
|
55
|
+
route permits it.
|
|
56
|
+
|
|
57
|
+
For install guidance, use the generated `myskills install ...` or
|
|
58
|
+
`myskills export ... --output ...` command. The corresponding MCP tool no longer
|
|
59
|
+
returns `apiBundleEndpoint` or a bundle URL, so clients must not construct one;
|
|
60
|
+
the CLI's authenticated export/install path remains the replacement flow.
|
|
61
|
+
Generated commands do not embed an API URL or bearer token; configure the CLI
|
|
62
|
+
with `myskills config set api-url ...` or `MYSKILLS_API_URL`, then authenticate
|
|
63
|
+
separately.
|
|
64
|
+
|
|
33
65
|
Implemented commands:
|
|
34
66
|
|
|
35
67
|
```text
|
|
@@ -55,7 +87,7 @@ myskills review bundle <submission-id> [--platform <name>] [--output <file>] [--
|
|
|
55
87
|
myskills review action <submission-id> --action <approve|request-changes|reject|publish> [--artifact-sha256 <hash>] [--reason <text>] [--api-url <url>] [--token <token>]
|
|
56
88
|
myskills submissions list [--api-url <url>] [--token <token>]
|
|
57
89
|
myskills submissions withdraw <submission-id> [--reason <text>] [--api-url <url>] [--token <token>]
|
|
58
|
-
myskills skills edit <skill-slug> [--title <text>] [--summary <text>] [--
|
|
90
|
+
myskills skills edit <skill-slug> [--title <text>] [--summary <text>] [--tag <tag>] [--visibility <scope>] [--reason <text>] [--api-url <url>] [--token <token>] (deprecated visibility compatibility alias; use sharing set)
|
|
59
91
|
myskills skills archive|restore|delete <skill-slug> [--reason <text>] [--api-url <url>] [--token <token>]
|
|
60
92
|
myskills releases list <skill-slug> [--api-url <url>] [--token <token>]
|
|
61
93
|
myskills releases deprecate|unpublish|revoke|restore|delete <skill-slug>@<version> [--reason <text>] [--replacement <version>] [--api-url <url>] [--token <token>]
|
|
@@ -64,9 +96,16 @@ myskills teams create <team-name> [--name <team-name>] [--api-url <url>] [--toke
|
|
|
64
96
|
myskills teams invite <team-id> --email <email> [--api-url <url>] [--token <token>]
|
|
65
97
|
myskills teams accept <invitation-id> [--api-url <url>] [--token <token>]
|
|
66
98
|
myskills sharing get <skill-slug> [--api-url <url>] [--token <token>]
|
|
67
|
-
myskills sharing set <skill-slug> --visibility <scope> [--team <team-id>] [--user <email>]
|
|
99
|
+
myskills sharing set <skill-slug> --visibility <scope> [--team <team-id>] [--user <email>] [--organization <organization-id>] [--organization-id <organization-id>] [--clear-organizations]
|
|
100
|
+
myskills architectures patterns [--api-url <url>] [--token <token>]
|
|
101
|
+
myskills architectures list [--api-url <url>] [--token <token>]
|
|
102
|
+
myskills architectures show <architecture-id> [--revision <revision-id>] [--api-url <url>] [--token <token>]
|
|
103
|
+
myskills architectures preview|compile <architecture-id> [--revision <revision-id>] [--profile <profile-id>] [--environment <environment-id>] [--organization-id <organization-id>|--organization <organization-id>] [--api-url <url>] [--token <token>]
|
|
104
|
+
myskills architectures plan|dry-run <architecture-id> --observed <fixture.json> [--revision <revision-id>] [--profile <profile-id>] [--environment <environment-id>] [--organization-id <organization-id>|--organization <organization-id>] [--api-url <url>] [--token <token>]
|
|
105
|
+
myskills architectures observe --root <absolute-dir> --profile <personal|work|shared> (--context <file> | --target-id <id> --generation <number> --architecture-id <id> --environment-id <id> --profile-id <id> --adapter-digest <sha256> --capabilities-digest <sha256>) [--json]
|
|
106
|
+
myskills architectures health --root <absolute-dir> --profile <personal|work|shared> (--context <file> | --target-id <id> --generation <number> --architecture-id <id> --environment-id <id> --profile-id <id> --adapter-digest <sha256> --capabilities-digest <sha256>) [--json]
|
|
68
107
|
myskills admin sharing get [--api-url <url>] [--token <token>]
|
|
69
|
-
myskills admin sharing set [--public <true|false>] [--authenticated <true|false>] [--teams <true|false>] [--team-visibility <true|false>] [--user-visibility <true|false>]
|
|
108
|
+
myskills admin sharing set [--public <true|false>] [--authenticated <true|false>] [--teams <true|false>] [--team-visibility <true|false>] [--user-visibility <true|false>] [--organization-visibility <true|false>]
|
|
70
109
|
myskills export <skill-slug> --version <version> --platform <platform> --output <dir>
|
|
71
110
|
myskills install <skill-slug> [--version <version>] [--platform <platform>] [--dir <install-root>]
|
|
72
111
|
myskills list [--dir <install-root>]
|
|
@@ -77,6 +116,48 @@ myskills token list
|
|
|
77
116
|
myskills token revoke <token-id>
|
|
78
117
|
```
|
|
79
118
|
|
|
119
|
+
The API-backed architecture preview includes the compiled graph, escaped
|
|
120
|
+
Mermaid, and a versioned diagram artifact with a plain-text accessible outline.
|
|
121
|
+
Use `--json` when a caller needs the complete JSON/Mermaid/outline projection;
|
|
122
|
+
the human-readable preview prints the bounded topology summary and Mermaid.
|
|
123
|
+
The browser workbench additionally offers derived JSON and Mermaid downloads.
|
|
124
|
+
|
|
125
|
+
### Local Codex observation
|
|
126
|
+
|
|
127
|
+
`architectures observe` and `architectures health` run the Codex adapter locally
|
|
128
|
+
against an explicitly supplied absolute root. The profile must be selected
|
|
129
|
+
explicitly as `personal`, `work`, or `shared`. Supply either `--context` with a
|
|
130
|
+
JSON object containing exactly `targetId`, `targetGeneration`,
|
|
131
|
+
`architectureId`, `environmentId`, `profileId`, `adapterDigest`, and
|
|
132
|
+
`capabilitiesDigest`, or pass those seven values through their corresponding
|
|
133
|
+
flags.
|
|
134
|
+
|
|
135
|
+
The command reads only bounded, allowlisted metadata and safe skill
|
|
136
|
+
frontmatter. It does not search home directories, follow profile pointers,
|
|
137
|
+
read prompt or skill bodies, emit local paths, retain credentials, call the
|
|
138
|
+
network, upload observations, or modify a target. Review the JSON output before
|
|
139
|
+
any separately authorized/manual upload to an API observation route. No live
|
|
140
|
+
apply, rollback, installation, or other target mutation is available through
|
|
141
|
+
this command.
|
|
142
|
+
|
|
143
|
+
### Fixture-only sync and recovery
|
|
144
|
+
|
|
145
|
+
`architectures plan` and `architectures dry-run` accept a bounded observed
|
|
146
|
+
fixture and return a dry-run plan. The fixture is not an implicit target and
|
|
147
|
+
the command does not apply changes. Local Phase 2 sync/recovery control is
|
|
148
|
+
fixture-only, even though its API persistence and recovery/rollback evidence
|
|
149
|
+
can be stored in Postgres. No public sync-run route, live adapter, target
|
|
150
|
+
apply, rollback, package installation, or target filesystem writer is
|
|
151
|
+
available. Each bounded run allows at most 500 steps and 2,004 append-only
|
|
152
|
+
receipts: a 1,002-receipt max-step lifecycle, one full apply/verify retry, and
|
|
153
|
+
two recovery/terminal receipts. Further retries require a new bounded run.
|
|
154
|
+
|
|
155
|
+
The API/web control plane also supports manager-only organization architecture
|
|
156
|
+
grant save/revoke and owner/team-owner derive-shell migration preview/create.
|
|
157
|
+
Those operations require the server's current-revision, organization-policy,
|
|
158
|
+
membership, exact-release, limit, idempotency, and MFA checks. This CLI does
|
|
159
|
+
not expose a second policy implementation or write command for them.
|
|
160
|
+
|
|
80
161
|
## Published And Candidate Channels
|
|
81
162
|
|
|
82
163
|
The currently published package remains available under npm's `alpha` tag:
|
|
@@ -93,7 +174,7 @@ Update the CLI with:
|
|
|
93
174
|
npm install -g @jarel/myskills@alpha
|
|
94
175
|
```
|
|
95
176
|
|
|
96
|
-
The `0.1.0-beta.
|
|
177
|
+
The `0.1.0-beta.3` source manifest is configured for the `beta` dist-tag. The release-verification workflow packs and installs the candidate without publishing it.
|
|
97
178
|
|
|
98
179
|
`validate`, `scan`, and `submit` accept a manifest file, package directory, or local `.zip` package. `login` prompts for the API URL when one is not supplied; the default is the local API at `http://localhost:3001`, and custom hosted URLs can be entered manually. Successful login stores the selected API URL in local CLI config so later commands can omit `--api-url`. API URL resolution is `--api-url`, then `MYSKILLS_API_URL`, then saved config, then `http://localhost:3001`.
|
|
99
180
|
|
|
@@ -105,9 +186,43 @@ The `0.1.0-beta.2` source manifest is configured for the `beta` dist-tag, but pa
|
|
|
105
186
|
|
|
106
187
|
Published artifacts remain immutable. `skills edit` changes mutable skill metadata only, while `releases deprecate`, `releases unpublish`, `releases revoke`, `releases restore`, and `releases delete` update server-owned lifecycle state for a specific version. Deprecated releases remain visible and installable; unpublished, revoked, archived, and deleted releases are hidden from install/export queries. `export` downloads server-authorized bundle content, verifies byte size and SHA-256 against release metadata, and writes normalized package paths under the requested output directory. `install` uses the same verified bundle path, writes into `--dir`, `MYSKILLS_INSTALL_DIR`, or the user data directory, and records local state in `.myskills-app/installed.json`; `update` preserves a rollback snapshot before replacing files, and `rollback` restores the most recent snapshot. `token create` prints the plaintext API token only once and does not overwrite the stored login session. Browser/device login, platform-specific install adapters, and archive creation are still planned.
|
|
107
188
|
|
|
189
|
+
To change skill visibility, use the canonical `myskills sharing set
|
|
190
|
+
<skill-slug> --visibility <scope>` command. It accepts either
|
|
191
|
+
`--organization <organization-id>` or `--organization-id <organization-id>` for
|
|
192
|
+
the complete organization grant set. Omitting both organization options keeps
|
|
193
|
+
the beta.2 compatibility behavior and preserves already-issued organization
|
|
194
|
+
grants. Pass `--clear-organizations` to send `organizationIds: []` and revoke
|
|
195
|
+
the complete organization grant set; this flag is mutually exclusive with both
|
|
196
|
+
organization ID options.
|
|
197
|
+
|
|
198
|
+
`myskills skills edit --visibility <scope>` remains a deprecated beta.2
|
|
199
|
+
compatibility alias. It preserves omitted organization grants and does not
|
|
200
|
+
provide complete-set organization controls; use the canonical sharing command
|
|
201
|
+
to grant or clear organization access. Canonical sharing remains subject to
|
|
202
|
+
the API's session and MFA security rules; the beta.2 metadata alias is also
|
|
203
|
+
session-only and requires an MFA-verified session before it reads or replaces
|
|
204
|
+
grants. API tokens cannot widen a skill through the alias. Neither path
|
|
205
|
+
bypasses server policy. Organization policy and membership remain API-owned.
|
|
206
|
+
Do not treat a successful CLI command for another scope as evidence of
|
|
207
|
+
organization sharing.
|
|
208
|
+
|
|
209
|
+
The CLI does not provide the separate architecture organization-grant
|
|
210
|
+
replacement workflow; architecture grants remain an API/web manager control.
|
|
211
|
+
The read-only `architectures preview`, `compile`, `plan`, and `dry-run`
|
|
212
|
+
commands already accept `--organization-id <organization-id>` (with
|
|
213
|
+
`--organization <organization-id>` retained as an input alias). The server
|
|
214
|
+
authorizes that exact organization projection; it is a scope filter, not an
|
|
215
|
+
ownership shortcut.
|
|
216
|
+
|
|
217
|
+
The beta.2 compatibility shims remain in beta.3 and are planned for removal only
|
|
218
|
+
at a later, separately published prerelease boundary that includes migration
|
|
219
|
+
guidance and release verification. The source release does not imply a hosted
|
|
220
|
+
deployment.
|
|
221
|
+
|
|
108
222
|
Common scopes:
|
|
109
223
|
|
|
110
224
|
- `skills:read` for MCP registry discovery.
|
|
111
225
|
- `profile:read` for `whoami`.
|
|
112
226
|
- `skills:submit` for author submissions.
|
|
113
227
|
- `review:read` and `review:write` for maintainer review workflows.
|
|
228
|
+
- `architectures:read` for architecture list, detail, preview, and fixture-plan reads.
|