@aexol/opencode-wizard 0.1.12 → 0.1.15

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 CHANGED
@@ -45,7 +45,7 @@ Use `skills.urls` only for public registries that are intentionally cacheable by
45
45
 
46
46
  ## Catalog discovery and auth bootstrap
47
47
 
48
- On chat/system-context startup, the plugin attempts to load the catalog automatically with the stored plugin session at `plugin/opencode-wizard/.generated/auth-state.json`. If no valid plugin session exists, startup stays passive and reports that interactive fetch will bootstrap browser login when needed; it does not open the browser from system context.
48
+ On chat/system-context startup, the plugin attempts to load the catalog automatically with the stored plugin auth at `~/.config/opencode/opencode-wizard.json` (`auth` field). If no valid plugin session exists, startup stays passive and reports that interactive fetch will bootstrap browser login when needed; it does not open the browser from system context.
49
49
 
50
50
  Call `opencode_wizard_published_skills_fetch` without `skill` or `skills` to manually bootstrap plugin login if needed and return catalog-only discovery output for the current directory scope.
51
51
 
package/dist/server.d.ts CHANGED
@@ -25,10 +25,18 @@ export type PublishedSkillCatalogPayload = {
25
25
  repositoryUrl?: string | null;
26
26
  defaultBranch?: string | null;
27
27
  status: string;
28
- };
28
+ } | null;
29
29
  directoryPath: string;
30
30
  skills: PublishedSkillCatalogItem[];
31
+ catalogSkills: PublishedSkillInstallableCatalogItem[];
32
+ userPreferences: PublishedSkillUserPreferences;
33
+ };
34
+ type PublishedSkillUserPreferences = {
35
+ scopeKey: string;
36
+ userKey: string;
37
+ ignoredSkills: PublishedSkillCatalogItem[];
31
38
  };
39
+ export type PublishedSkillInstallableCatalogItem = Pick<PublishedSkillCatalogItem, 'skill' | 'skillVersion' | 'publishedArtifact'>;
32
40
  export type PublishedSkillCatalogItem = {
33
41
  assignmentSource: string;
34
42
  assignmentType: string;
@@ -128,7 +136,7 @@ type PublishedSkillSummary = {
128
136
  publishedAt: string;
129
137
  identifiers: string[];
130
138
  tags: PublishedSkillTagSummary[];
131
- contextKind: 'global' | 'project';
139
+ contextKind: 'global' | 'project' | 'installable';
132
140
  installPolicy: PublishedSkillInstallPolicy;
133
141
  policyLabel: string;
134
142
  };
@@ -154,7 +162,7 @@ type OpencodePluginServer = (input: OpencodePluginServerInput) => Promise<{
154
162
  type PublishedSkillsSuccessState = {
155
163
  pluginId: string;
156
164
  runtimeMode: 'tool_fetch_only';
157
- deliveryModel: 'backend_published_global_project_assignments';
165
+ deliveryModel: 'backend_published_installed_effective_skills';
158
166
  workspace: PublishedSkillCatalogPayload['workspace'];
159
167
  directoryPath: string;
160
168
  rootSkillSeedPath: string;
@@ -177,6 +185,13 @@ export type NativeSkillsUrlCompatibility = {
177
185
  guidance: string;
178
186
  };
179
187
  export declare const NATIVE_SKILLS_URL_COMPATIBILITY: NativeSkillsUrlCompatibility;
188
+ type PublishedSkillsIgnoreState = {
189
+ scopeKey: string;
190
+ userKey: string;
191
+ ignoredSkillSlugs: string[];
192
+ installedGlobalSkillSlugs: string[];
193
+ installedWorkspaceSkillSlugs: string[];
194
+ };
180
195
  export type PluginAuthStateSummary = {
181
196
  status: 'missing' | 'authenticated';
182
197
  email: string | null;
@@ -202,6 +217,16 @@ export type PluginStatusSnapshot = {
202
217
  availableTools: typeof AVAILABLE_PUBLISHED_SKILL_TOOLS;
203
218
  message: string | null;
204
219
  catalog: PublishedSkillsSuccessState | null;
220
+ installableCatalog: {
221
+ count: number;
222
+ skills: PublishedSkillSummary[];
223
+ } | null;
224
+ ignoredPublishedSkills: {
225
+ scopeKey: string;
226
+ userKey: string;
227
+ count: number;
228
+ skills: PublishedSkillSummary[];
229
+ };
205
230
  };
206
231
  export declare const resolveConfig: (worktree: string) => Promise<ResolvedConfig>;
207
232
  export declare const buildSkillMarkdown: (item: PublishedSkillDetailItem) => string;
@@ -231,6 +256,22 @@ export declare const resolvePluginStatusSnapshotWithAuthBootstrap: ({ worktree,
231
256
  directory: string;
232
257
  signal: AbortSignal;
233
258
  }) => Promise<PluginStatusSnapshot>;
259
+ export declare const setPublishedSkillIgnored: ({ worktree, directory, skillSlug, ignored, preferenceScope, }: {
260
+ worktree: string;
261
+ directory: string;
262
+ scopeKey?: string;
263
+ skillSlug: string;
264
+ ignored: boolean;
265
+ preferenceScope?: "global" | "project";
266
+ }) => Promise<PublishedSkillsIgnoreState>;
267
+ export declare const setPublishedSkillInstalled: ({ worktree, directory, skillSlug, installed, preferenceScope, }: {
268
+ worktree: string;
269
+ directory: string;
270
+ scopeKey?: string;
271
+ skillSlug: string;
272
+ installed: boolean;
273
+ preferenceScope: "global" | "project";
274
+ }) => Promise<PublishedSkillsIgnoreState>;
234
275
  declare const _default: {
235
276
  id: string;
236
277
  server: OpencodePluginServer;