@aexol/opencode-wizard 0.1.14 → 0.1.16
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 +2 -1
- package/dist/config.d.ts +6 -0
- package/dist/config.js +19 -0
- package/dist/config.js.map +1 -0
- package/dist/server.d.ts +49 -2
- package/dist/server.js +448 -97
- package/dist/server.js.map +1 -1
- package/dist/smoke-published-skills.js +7 -1
- package/dist/smoke-published-skills.js.map +1 -1
- package/dist/storage.d.ts +5 -0
- package/dist/storage.js +43 -0
- package/dist/storage.js.map +1 -0
- package/dist/tui.js +414 -186
- package/dist/tui.js.map +1 -1
- package/package.json +3 -2
package/dist/tui.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createEffect","createMemo","createSignal","PLUGIN_ID","resolvePluginStatusSnapshotWithAuthBootstrap","STATUS_TIMEOUT_MS","STATUS_REFRESH_INTERVAL_MS","MAX_STATUS_MESSAGE_LENGTH","MAX_SKILL_DESCRIPTION_LENGTH","MAX_SKILL_NAME_LENGTH","MAX_SKILL_META_LENGTH","MAX_SKILL_TAGS","SKILLS_PAGE_SIZE","compactStatusMessage","message","length","slice","compactSkillDescription","compactSkillName","name","compactSkillMeta","meta","formatSkillsCatalogUnavailableMessage","snapshot","catalog","status","formatAuthStatus","authState","email","formatBackendOriginLabel","backendOrigin","hostname","URL","includes","requestRender","api","renderer","Row","props","_el$","_$createElement","_el$2","_el$3","_$createTextNode","_el$4","_$insertNode","_$setProp","_$insert","label","value","_$effect","_p$","_v$","labelColor","_v$2","valueColor","e","t","undefined","Panel","_el$5","_el$6","_el$7","_el$8","_el$9","_el$0","_el$1","title","children","_v$3","onOpen","_v$4","theme","text","_v$5","textMuted","a","StatusContent","kind","_el$11","_$p","_el$13","_el$14","warning","_$createComponent","ReadyRows","SkillsRows","current","statusContent","currentStatus","_el$15","CatalogBullet","_el$16","_el$17","getSkillDisplayName","skill","artifactName","skillName","skillSlug","getSkillDescription","whenToUse","artifactDescription","getSkillTags","tagLabels","tags","map","tag","slug","filter","Boolean","join","getSkillMeta","policyLabel","contextKind","SkillCatalogRow","description","_el$18","_el$19","_el$20","_el$21","_el$22","_v$6","_v$7","WizardSkillsDialogContent","page","setPage","content","_el$23","_el$25","_el$26","_el$27","_el$28","totalPages","Math","max","ceil","skills","currentPage","min","startIndex","endIndex","visibleSkills","canGoBack","canGoForward","goBack","goForward","_el$29","_el$30","_el$31","_el$32","_el$33","_el$34","_el$35","_el$36","_el$37","_el$38","_el$39","_el$40","_el$41","_el$42","_el$43","_el$45","_el$46","_el$47","_el$48","publishedSkillCount","assignmentCounts","global","project","_v$8","_v$9","_v$0","_v$1","_v$10","o","i","_$memo","statusRows","_el$50","counts","_el$51","_el$52","WizardSkillsDialog","ui","dialog","setSize","_el$54","_el$55","_el$56","_el$57","_el$59","_el$60","_el$62","_v$11","_v$12","onClose","_v$13","openWizardSkillsDialog","refreshStatus","replace","showLoading","clear","createWizardStatusSlot","order","slots","home_bottom","sidebar_content","_ctx","_value","loadStatus","worktree","state","path","directory","signal","AbortSignal","timeout","error","Error","tui","setStatus","options","then","nextStatus","register","setInterval","id"],"sources":["../src/tui.tsx"],"sourcesContent":["/** @jsxImportSource @opentui/solid */\nimport type { RGBA } from '@opentui/core';\nimport { createEffect, createMemo, createSignal } from 'solid-js';\nimport type { JSX } from 'solid-js';\nimport {\n PLUGIN_ID,\n resolvePluginStatusSnapshotWithAuthBootstrap,\n type PluginStatusSnapshot,\n} from './server.js';\n\ntype StatusState =\n | {\n kind: 'loading';\n }\n | {\n kind: 'ready';\n snapshot: PluginStatusSnapshot;\n }\n | {\n kind: 'error';\n message: string;\n };\n\ntype WizardTheme = {\n text: string | RGBA | undefined;\n textMuted: string | RGBA | undefined;\n warning: string | RGBA | undefined;\n};\n\ntype TuiPluginApi = {\n theme: {\n current: WizardTheme;\n };\n ui?: {\n dialog?: {\n replace?: (render: () => JSX.Element, onClose?: () => void) => void;\n clear?: () => void;\n setSize?: (size: 'medium' | 'large' | 'xlarge') => void;\n };\n };\n renderer?: {\n requestRender?: () => void;\n };\n slots: {\n register: (slot: TuiSlotPlugin) => void;\n };\n state: {\n path: {\n worktree: string;\n directory: string;\n };\n };\n};\n\ntype TuiSlotContext = unknown;\n\ntype TuiSlotPlugin = {\n order: number;\n slots: {\n home_bottom: () => JSX.Element;\n sidebar_content: (ctx: TuiSlotContext, value: { session_id: string }) => JSX.Element;\n };\n};\n\ntype TuiPlugin = (api: TuiPluginApi) => void | Promise<void>;\n\nconst STATUS_TIMEOUT_MS = 5_000;\nconst STATUS_REFRESH_INTERVAL_MS = 5_000;\nconst MAX_STATUS_MESSAGE_LENGTH = 80;\nconst MAX_SKILL_DESCRIPTION_LENGTH = 96;\nconst MAX_SKILL_NAME_LENGTH = 48;\nconst MAX_SKILL_META_LENGTH = 72;\nconst MAX_SKILL_TAGS = 4;\nconst SKILLS_PAGE_SIZE = 5;\n\nconst compactStatusMessage = (message: string): string => {\n if (message.length <= MAX_STATUS_MESSAGE_LENGTH) return message;\n\n return `${message.slice(0, MAX_STATUS_MESSAGE_LENGTH - 1)}…`;\n};\n\nconst compactSkillDescription = (message: string): string => {\n if (message.length <= MAX_SKILL_DESCRIPTION_LENGTH) return message;\n\n return `${message.slice(0, MAX_SKILL_DESCRIPTION_LENGTH - 1)}…`;\n};\n\nconst compactSkillName = (name: string): string => {\n if (name.length <= MAX_SKILL_NAME_LENGTH) return name;\n\n return `${name.slice(0, MAX_SKILL_NAME_LENGTH - 1)}…`;\n};\n\nconst compactSkillMeta = (meta: string): string => {\n if (meta.length <= MAX_SKILL_META_LENGTH) return meta;\n\n return `${meta.slice(0, MAX_SKILL_META_LENGTH - 1)}…`;\n};\n\nconst formatSkillsCatalogUnavailableMessage = (snapshot: PluginStatusSnapshot): string => {\n if (!snapshot.catalog && snapshot.status === 'missing_auth') {\n if (snapshot.message) return compactStatusMessage(snapshot.message);\n\n return 'locked (browser auth pending)';\n }\n\n if (!snapshot.catalog && snapshot.message) return compactStatusMessage(snapshot.message);\n if (!snapshot.catalog) return `unavailable (${snapshot.status})`;\n\n return 'unavailable';\n};\n\nconst formatAuthStatus = (snapshot: PluginStatusSnapshot): string => {\n if (snapshot.authState.status !== 'authenticated') return snapshot.authState.status;\n if (!snapshot.authState.email) return 'authenticated';\n\n return snapshot.authState.email;\n};\n\nconst formatBackendOriginLabel = (backendOrigin: string): string => {\n try {\n const { hostname } = new URL(backendOrigin);\n if (hostname === 'localhost' || hostname === '127.0.0.1') return 'localhost';\n\n return 'opencode-wizard';\n } catch {\n if (backendOrigin.includes('localhost') || backendOrigin.includes('127.0.0.1')) return 'localhost';\n\n return 'opencode-wizard';\n }\n};\n\nconst requestRender = (api: TuiPluginApi): void => {\n try {\n api.renderer?.requestRender?.();\n } catch {\n // Ignore render request failures; state is still updated.\n }\n};\n\nconst Row = (props: {\n label: string;\n value: string;\n labelColor: string | RGBA | undefined;\n valueColor: string | RGBA | undefined;\n}) => (\n <box width=\"100%\" flexDirection=\"row\" overflow=\"hidden\">\n <text fg={props.labelColor} flexShrink={0} wrapMode=\"none\">\n {props.label}: \n </text>\n <text fg={props.valueColor} flexGrow={1} overflow=\"hidden\" wrapMode=\"none\">\n {props.value}\n </text>\n </box>\n);\n\nconst Panel = (props: {\n title: string;\n theme: TuiPluginApi['theme']['current'];\n onOpen: () => void;\n children: JSX.Element;\n}) => (\n <box width=\"100%\" flexDirection=\"column\" paddingRight={1} onMouseUp={props.onOpen}>\n <box width=\"100%\" flexDirection=\"row\" justifyContent=\"space-between\" overflow=\"hidden\">\n <box flexShrink={0}>\n <text fg={props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n <b>{props.title}</b>\n </text>\n </box>\n <box flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">\n open\n </text>\n </box>\n </box>\n {props.children}\n </box>\n);\n\nconst StatusContent = (props: { status: StatusState; theme: TuiPluginApi['theme']['current'] }) => {\n if (props.status.kind === 'loading') {\n return (\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n loading…\n </text>\n );\n }\n\n if (props.status.kind === 'error') {\n return (\n <text fg={props.theme.warning} wrapMode=\"none\" overflow=\"hidden\">\n unavailable: {compactStatusMessage(props.status.message)}\n </text>\n );\n }\n\n return <ReadyRows snapshot={props.status.snapshot} theme={props.theme} />;\n};\n\nconst SkillsRows = (props: { api: TuiPluginApi; status: () => StatusState }) => {\n const theme = createMemo(() => props.api.theme.current);\n const statusContent = () => {\n const currentStatus = props.status();\n\n return <StatusContent status={currentStatus} theme={theme()} />;\n };\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n {statusContent()}\n </box>\n );\n};\n\nconst CatalogBullet = (props: { value: string; theme: TuiPluginApi['theme']['current'] }) => (\n <text fg={props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n {' - '}{props.value}\n </text>\n);\n\ntype PublishedSkillSummary = NonNullable<PluginStatusSnapshot['catalog']>['skills'][number];\ntype RefreshStatus = (options?: { showLoading?: boolean }) => void;\n\nconst getSkillDisplayName = (skill: PublishedSkillSummary): string => skill.artifactName || skill.skillName || skill.skillSlug;\n\nconst getSkillDescription = (skill: PublishedSkillSummary): string | null => {\n if (skill.whenToUse) return skill.whenToUse;\n if (skill.artifactDescription) return skill.artifactDescription;\n\n return null;\n};\n\nconst getSkillTags = (skill: PublishedSkillSummary): string => {\n const tagLabels = skill.tags.map((tag) => tag.label || tag.slug).filter(Boolean).slice(0, MAX_SKILL_TAGS);\n if (tagLabels.length === 0) return 'no tags';\n\n return tagLabels.join(', ');\n};\n\nconst getSkillMeta = (skill: PublishedSkillSummary): string => `${skill.policyLabel} · ${skill.contextKind} · ${getSkillTags(skill)}`;\n\nconst SkillCatalogRow = (props: { skill: PublishedSkillSummary; theme: TuiPluginApi['theme']['current'] }) => {\n const description = getSkillDescription(props.skill);\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\" marginBottom={1}>\n <text fg={props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n <b>{compactSkillName(getSkillDisplayName(props.skill))}</b>\n </text>\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n {compactSkillMeta(getSkillMeta(props.skill))}\n </text>\n {description ? (\n <text fg={props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n {compactSkillDescription(description)}\n </text>\n ) : null}\n </box>\n );\n};\n\nconst WizardSkillsDialogContent = (props: { status: () => StatusState; theme: TuiPluginApi['theme']['current'] }) => {\n const [page, setPage] = createSignal(0);\n const content = () => {\n const currentStatus = props.status();\n\n if (currentStatus.kind === 'loading') {\n return (\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n Refreshing published skills…\n </text>\n );\n }\n\n if (currentStatus.kind === 'error') {\n return (\n <text fg={props.theme.warning} wrapMode=\"none\" overflow=\"hidden\">\n unavailable: {compactStatusMessage(currentStatus.message)}\n </text>\n );\n }\n\n if (!currentStatus.snapshot.catalog) {\n return (\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n catalog {formatSkillsCatalogUnavailableMessage(currentStatus.snapshot)}\n </text>\n );\n }\n\n const { catalog } = currentStatus.snapshot;\n const totalPages = Math.max(1, Math.ceil(catalog.skills.length / SKILLS_PAGE_SIZE));\n const currentPage = Math.min(page(), totalPages - 1);\n const startIndex = currentPage * SKILLS_PAGE_SIZE;\n const endIndex = Math.min(startIndex + SKILLS_PAGE_SIZE, catalog.skills.length);\n const visibleSkills = catalog.skills.slice(startIndex, endIndex);\n const canGoBack = currentPage > 0;\n const canGoForward = currentPage < totalPages - 1;\n const goBack = () => {\n if (!canGoBack) return;\n\n setPage(currentPage - 1);\n };\n const goForward = () => {\n if (!canGoForward) return;\n\n setPage(currentPage + 1);\n };\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n <box width=\"100%\" flexDirection=\"row\" justifyContent=\"space-between\" overflow=\"hidden\">\n <text fg={props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n <b>{catalog.publishedSkillCount} skills</b>\n · {catalog.assignmentCounts.global} global · {catalog.assignmentCounts.project} workspace\n </text>\n <text fg={props.theme.textMuted} wrapMode=\"none\">\n page {currentPage + 1}/{totalPages}\n </text>\n </box>\n <box width=\"100%\" flexDirection=\"column\" marginTop={1} overflow=\"hidden\">\n {visibleSkills.map((skill) => (\n <SkillCatalogRow skill={skill} theme={props.theme} />\n ))}\n </box>\n <box width=\"100%\" flexDirection=\"row\" justifyContent=\"space-between\" overflow=\"hidden\">\n <box onMouseUp={goBack} flexShrink={0}>\n <text fg={canGoBack ? props.theme.text : props.theme.textMuted} wrapMode=\"none\">\n ← Prev\n </text>\n </box>\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n {visibleSkills.length} shown\n </text>\n <box onMouseUp={goForward} flexShrink={0}>\n <text fg={canGoForward ? props.theme.text : props.theme.textMuted} wrapMode=\"none\">\n Next →\n </text>\n </box>\n </box>\n </box>\n );\n };\n\n return <>{content()}</>;\n};\n\nconst ReadyRows = (props: { snapshot: PluginStatusSnapshot; theme: TuiPluginApi['theme']['current'] }) => {\n const statusRows = (\n <>\n <Row label=\"url\" value={formatBackendOriginLabel(props.snapshot.backendOrigin)} labelColor={props.theme.textMuted} valueColor={props.theme.text} />\n <Row label=\"auth\" value={formatAuthStatus(props.snapshot)} labelColor={props.theme.textMuted} valueColor={props.theme.text} />\n </>\n );\n\n if (!props.snapshot.catalog) {\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n {statusRows}\n <Row label=\"catalog\" value={formatSkillsCatalogUnavailableMessage(props.snapshot)} labelColor={props.theme.textMuted} valueColor={props.theme.text} />\n </box>\n );\n }\n\n const counts = props.snapshot.catalog.assignmentCounts;\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n {statusRows}\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n catalog:\n </text>\n <CatalogBullet value={`${props.snapshot.catalog.publishedSkillCount} loaded`} theme={props.theme} />\n <CatalogBullet value={`${counts.global} global`} theme={props.theme} />\n <CatalogBullet value={`${counts.project} workspace`} theme={props.theme} />\n </box>\n );\n};\n\nconst WizardSkillsDialog = (props: {\n api: TuiPluginApi;\n status: () => StatusState;\n onClose: () => void;\n}) => {\n const theme = createMemo(() => props.api.theme.current);\n\n createEffect(() => {\n props.api.ui?.dialog?.setSize?.('xlarge');\n });\n\n return (\n <box width=\"100%\" flexDirection=\"column\" paddingLeft={1} paddingRight={1} paddingBottom={1}>\n <box width=\"100%\" flexDirection=\"row\" justifyContent=\"space-between\" overflow=\"hidden\">\n <text fg={theme().text} wrapMode=\"none\" overflow=\"hidden\">\n <b>Wizard Skills</b>\n </text>\n <box onMouseUp={props.onClose} flexShrink={0}>\n <text fg={theme().textMuted} wrapMode=\"none\">\n Close\n </text>\n </box>\n </box>\n <box width=\"100%\" flexDirection=\"column\" marginTop={1} overflow=\"hidden\">\n <WizardSkillsDialogContent status={props.status} theme={theme()} />\n </box>\n </box>\n );\n};\n\nconst openWizardSkillsDialog = (api: TuiPluginApi, status: () => StatusState, refreshStatus: RefreshStatus): void => {\n const dialog = api.ui?.dialog;\n if (!dialog?.replace) return;\n\n refreshStatus({ showLoading: true });\n\n dialog.replace(\n () => (\n <WizardSkillsDialog\n api={api}\n status={status}\n onClose={() => {\n dialog.clear?.();\n requestRender(api);\n }}\n />\n ),\n () => {\n requestRender(api);\n },\n );\n\n requestRender(api);\n};\n\nconst createWizardStatusSlot = (api: TuiPluginApi, status: () => StatusState, refreshStatus: RefreshStatus): TuiSlotPlugin => ({\n order: 240,\n slots: {\n home_bottom: () => (\n <Panel title=\"Wizard Skills\" theme={api.theme.current} onOpen={() => openWizardSkillsDialog(api, status, refreshStatus)}>\n <SkillsRows api={api} status={status} />\n </Panel>\n ),\n sidebar_content: (_ctx: TuiSlotContext, _value: { session_id: string }) => (\n <Panel title=\"Wizard Skills\" theme={api.theme.current} onOpen={() => openWizardSkillsDialog(api, status, refreshStatus)}>\n <SkillsRows api={api} status={status} />\n </Panel>\n ),\n },\n});\n\nconst loadStatus = async (api: TuiPluginApi): Promise<StatusState> => {\n try {\n const snapshot = await resolvePluginStatusSnapshotWithAuthBootstrap({\n worktree: api.state.path.worktree,\n directory: api.state.path.directory,\n signal: AbortSignal.timeout(STATUS_TIMEOUT_MS),\n });\n\n return {\n kind: 'ready',\n snapshot,\n };\n } catch (error) {\n return {\n kind: 'error',\n message: error instanceof Error ? error.message : 'Unable to load opencode-wizard status.',\n };\n }\n};\n\nconst tui: TuiPlugin = async (api) => {\n const [status, setStatus] = createSignal<StatusState>({ kind: 'loading' });\n const refreshStatus: RefreshStatus = (options) => {\n if (options?.showLoading) {\n setStatus({ kind: 'loading' });\n requestRender(api);\n }\n\n void loadStatus(api).then((nextStatus) => {\n setStatus(nextStatus);\n requestRender(api);\n });\n };\n\n api.slots.register(createWizardStatusSlot(api, status, refreshStatus));\n refreshStatus();\n setInterval(refreshStatus, STATUS_REFRESH_INTERVAL_MS);\n};\n\nexport default {\n id: PLUGIN_ID,\n tui,\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createEffect","createMemo","createSignal","PLUGIN_ID","resolvePluginStatusSnapshotWithAuthBootstrap","setPublishedSkillInstalled","setPublishedSkillIgnored","STATUS_TIMEOUT_MS","STATUS_REFRESH_INTERVAL_MS","MAX_STATUS_MESSAGE_LENGTH","MAX_SKILL_DESCRIPTION_LENGTH","MAX_SKILL_NAME_LENGTH","MAX_SKILL_META_LENGTH","MAX_SKILL_TAGS","SKILLS_PAGE_SIZE","compactStatusMessage","message","length","slice","compactSkillDescription","compactSkillName","name","compactSkillMeta","meta","formatSkillsCatalogUnavailableMessage","snapshot","catalog","status","formatAuthStatus","authState","email","formatBackendOriginLabel","backendOrigin","hostname","URL","includes","requestRender","api","renderer","Row","props","_el$","_$createElement","_el$2","_el$3","_$createTextNode","_el$4","_$insertNode","_$setProp","_$insert","label","value","_$effect","_p$","_v$","labelColor","_v$2","valueColor","e","t","undefined","Panel","_el$5","_el$6","_el$7","_el$8","_el$9","_el$0","_el$1","title","children","_v$3","onOpen","_v$4","theme","text","_v$5","textMuted","a","StatusContent","kind","_el$11","_$p","_el$13","_el$14","warning","_$createComponent","ReadyRows","SkillsRows","current","statusContent","currentStatus","_el$15","CatalogBullet","_el$16","_el$17","getSkillDisplayName","skill","artifactName","skillName","skillSlug","getSkillDescription","whenToUse","artifactDescription","getSkillTags","tagLabels","tags","map","tag","slug","filter","Boolean","join","getSkillMeta","state","policyLabel","getRowStateLabel","row","ignored","getErrorMessage","error","Error","SkillCatalogRow","description","canUninstall","assignmentSource","_el$18","_el$19","_el$20","_el$21","_el$22","_el$24","_el$25","_el$26","_c$","_$memo","_el$27","_el$28","onInstall","_el$30","_el$32","_el$33","_el$35","_el$36","onIgnore","_el$37","_el$39","_el$40","onUninstall","_el$42","_v$6","_v$7","WizardSkillsDialogContent","page","setPage","content","_el$43","_el$45","_el$46","_el$47","_el$48","activeSkillSlugs","Set","skills","ignoredSkillSlugs","ignoredPublishedSkills","rows","contextKind","installableCatalog","has","totalPages","Math","max","ceil","currentPage","min","startIndex","endIndex","visibleRows","canGoBack","canGoForward","goBack","goForward","_el$49","_el$50","_el$51","_el$52","_el$53","_el$54","_el$55","_el$56","_el$57","_el$58","_el$59","_el$60","_el$61","_el$62","_el$63","_el$64","_el$65","_el$67","_el$68","_el$69","_el$70","publishedSkillCount","assignmentCounts","global","project","count","onIgnoreSkill","onInstallSkill","onUninstallSkill","_v$8","_v$9","_v$0","_v$1","_v$10","o","i","_el$72","PreferenceActionNoticeRow","notice","actionNotice","_el$73","statusRows","_el$74","counts","_el$75","_el$76","WizardSkillsDialog","setActionNotice","refreshAfterPreferenceChange","refreshStatus","showLoading","showPreferenceFailure","ignoreSkill","scopeKey","worktree","path","directory","preferenceScope","then","catch","installSkill","installed","uninstallSkill","ui","dialog","setSize","_el$78","_el$79","_el$80","_el$81","_el$83","_el$84","_el$86","_v$11","_v$12","onClose","_v$13","openWizardSkillsDialog","replace","clear","createWizardStatusSlot","order","slots","home_bottom","sidebar_content","_ctx","_value","loadStatus","signal","AbortSignal","timeout","tui","setStatus","options","nextStatus","register","setInterval","id"],"sources":["../src/tui.tsx"],"sourcesContent":["/** @jsxImportSource @opentui/solid */\nimport type { RGBA } from '@opentui/core';\nimport { createEffect, createMemo, createSignal } from 'solid-js';\nimport type { JSX } from 'solid-js';\nimport {\n PLUGIN_ID,\n resolvePluginStatusSnapshotWithAuthBootstrap,\n setPublishedSkillInstalled,\n setPublishedSkillIgnored,\n type PluginStatusSnapshot,\n} from './server.js';\n\ntype StatusState =\n | {\n kind: 'loading';\n }\n | {\n kind: 'ready';\n snapshot: PluginStatusSnapshot;\n }\n | {\n kind: 'error';\n message: string;\n };\n\ntype WizardTheme = {\n text: string | RGBA | undefined;\n textMuted: string | RGBA | undefined;\n warning: string | RGBA | undefined;\n};\n\ntype TuiPluginApi = {\n theme: {\n current: WizardTheme;\n };\n ui?: {\n dialog?: {\n replace?: (render: () => JSX.Element, onClose?: () => void) => void;\n clear?: () => void;\n setSize?: (size: 'medium' | 'large' | 'xlarge') => void;\n };\n };\n renderer?: {\n requestRender?: () => void;\n };\n slots: {\n register: (slot: TuiSlotPlugin) => void;\n };\n state: {\n path: {\n worktree: string;\n directory: string;\n };\n };\n};\n\ntype TuiSlotContext = unknown;\n\ntype TuiSlotPlugin = {\n order: number;\n slots: {\n home_bottom: () => JSX.Element;\n sidebar_content: (ctx: TuiSlotContext, value: { session_id: string }) => JSX.Element;\n };\n};\n\ntype TuiPlugin = (api: TuiPluginApi) => void | Promise<void>;\n\nconst STATUS_TIMEOUT_MS = 5_000;\nconst STATUS_REFRESH_INTERVAL_MS = 5_000;\nconst MAX_STATUS_MESSAGE_LENGTH = 80;\nconst MAX_SKILL_DESCRIPTION_LENGTH = 96;\nconst MAX_SKILL_NAME_LENGTH = 48;\nconst MAX_SKILL_META_LENGTH = 72;\nconst MAX_SKILL_TAGS = 4;\nconst SKILLS_PAGE_SIZE = 5;\n\nconst compactStatusMessage = (message: string): string => {\n if (message.length <= MAX_STATUS_MESSAGE_LENGTH) return message;\n\n return `${message.slice(0, MAX_STATUS_MESSAGE_LENGTH - 1)}…`;\n};\n\nconst compactSkillDescription = (message: string): string => {\n if (message.length <= MAX_SKILL_DESCRIPTION_LENGTH) return message;\n\n return `${message.slice(0, MAX_SKILL_DESCRIPTION_LENGTH - 1)}…`;\n};\n\nconst compactSkillName = (name: string): string => {\n if (name.length <= MAX_SKILL_NAME_LENGTH) return name;\n\n return `${name.slice(0, MAX_SKILL_NAME_LENGTH - 1)}…`;\n};\n\nconst compactSkillMeta = (meta: string): string => {\n if (meta.length <= MAX_SKILL_META_LENGTH) return meta;\n\n return `${meta.slice(0, MAX_SKILL_META_LENGTH - 1)}…`;\n};\n\nconst formatSkillsCatalogUnavailableMessage = (snapshot: PluginStatusSnapshot): string => {\n if (!snapshot.catalog && snapshot.status === 'missing_auth') {\n if (snapshot.message) return compactStatusMessage(snapshot.message);\n\n return 'locked (browser auth pending)';\n }\n\n if (!snapshot.catalog && snapshot.message) return compactStatusMessage(snapshot.message);\n if (!snapshot.catalog) return `unavailable (${snapshot.status})`;\n\n return 'unavailable';\n};\n\nconst formatAuthStatus = (snapshot: PluginStatusSnapshot): string => {\n if (snapshot.authState.status !== 'authenticated') return snapshot.authState.status;\n if (!snapshot.authState.email) return 'authenticated';\n\n return snapshot.authState.email;\n};\n\nconst formatBackendOriginLabel = (backendOrigin: string): string => {\n try {\n const { hostname } = new URL(backendOrigin);\n if (hostname === 'localhost' || hostname === '127.0.0.1') return 'localhost';\n\n return 'opencode-wizard';\n } catch {\n if (backendOrigin.includes('localhost') || backendOrigin.includes('127.0.0.1')) return 'localhost';\n\n return 'opencode-wizard';\n }\n};\n\nconst requestRender = (api: TuiPluginApi): void => {\n try {\n api.renderer?.requestRender?.();\n } catch {\n // Ignore render request failures; state is still updated.\n }\n};\n\nconst Row = (props: {\n label: string;\n value: string;\n labelColor: string | RGBA | undefined;\n valueColor: string | RGBA | undefined;\n}) => (\n <box width=\"100%\" flexDirection=\"row\" overflow=\"hidden\">\n <text fg={props.labelColor} flexShrink={0} wrapMode=\"none\">\n {props.label}: \n </text>\n <text fg={props.valueColor} flexGrow={1} overflow=\"hidden\" wrapMode=\"none\">\n {props.value}\n </text>\n </box>\n);\n\nconst Panel = (props: {\n title: string;\n theme: TuiPluginApi['theme']['current'];\n onOpen: () => void;\n children: JSX.Element;\n}) => (\n <box width=\"100%\" flexDirection=\"column\" paddingRight={1} onMouseUp={props.onOpen}>\n <box width=\"100%\" flexDirection=\"row\" justifyContent=\"space-between\" overflow=\"hidden\">\n <box flexShrink={0}>\n <text fg={props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n <b>{props.title}</b>\n </text>\n </box>\n <box flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">\n open\n </text>\n </box>\n </box>\n {props.children}\n </box>\n);\n\nconst StatusContent = (props: { status: StatusState; theme: TuiPluginApi['theme']['current'] }) => {\n if (props.status.kind === 'loading') {\n return (\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n loading…\n </text>\n );\n }\n\n if (props.status.kind === 'error') {\n return (\n <text fg={props.theme.warning} wrapMode=\"none\" overflow=\"hidden\">\n unavailable: {compactStatusMessage(props.status.message)}\n </text>\n );\n }\n\n return <ReadyRows snapshot={props.status.snapshot} theme={props.theme} />;\n};\n\nconst SkillsRows = (props: { api: TuiPluginApi; status: () => StatusState }) => {\n const theme = createMemo(() => props.api.theme.current);\n const statusContent = () => {\n const currentStatus = props.status();\n\n return <StatusContent status={currentStatus} theme={theme()} />;\n };\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n {statusContent()}\n </box>\n );\n};\n\nconst CatalogBullet = (props: { value: string; theme: TuiPluginApi['theme']['current'] }) => (\n <text fg={props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n {' - '}{props.value}\n </text>\n);\n\ntype PublishedSkillSummary = NonNullable<PluginStatusSnapshot['catalog']>['skills'][number];\ntype SkillRowState = 'installed-global' | 'installed-project' | 'installable';\ntype SkillDialogRow = {\n skill: PublishedSkillSummary;\n ignored: boolean;\n state: SkillRowState;\n};\ntype RefreshStatus = (options?: { showLoading?: boolean }) => void;\ntype PreferenceActionNotice =\n | {\n kind: 'idle';\n }\n | {\n kind: 'pending';\n message: string;\n }\n | {\n kind: 'success';\n message: string;\n }\n | {\n kind: 'error';\n message: string;\n };\n\nconst getSkillDisplayName = (skill: PublishedSkillSummary): string => skill.artifactName || skill.skillName || skill.skillSlug;\n\nconst getSkillDescription = (skill: PublishedSkillSummary): string | null => {\n if (skill.whenToUse) return skill.whenToUse;\n if (skill.artifactDescription) return skill.artifactDescription;\n\n return null;\n};\n\nconst getSkillTags = (skill: PublishedSkillSummary): string => {\n const tagLabels = skill.tags.map((tag) => tag.label || tag.slug).filter(Boolean).slice(0, MAX_SKILL_TAGS);\n if (tagLabels.length === 0) return 'no tags';\n\n return tagLabels.join(', ');\n};\n\nconst getSkillMeta = (skill: PublishedSkillSummary, state: SkillRowState): string =>\n `${skill.policyLabel} · ${state} · ${getSkillTags(skill)}`;\n\nconst getRowStateLabel = (row: SkillDialogRow): string => {\n if (row.ignored) return 'ignored';\n if (row.state === 'installable') return 'not installed';\n return row.state === 'installed-global' ? 'installed global' : 'installed project';\n};\n\nconst getErrorMessage = (error: unknown): string => {\n if (error instanceof Error && error.message) return error.message;\n return 'Preference update failed. Check plugin auth/backend status and try again.';\n};\n\nconst SkillCatalogRow = (props: {\n row: SkillDialogRow;\n theme: TuiPluginApi['theme']['current'];\n onIgnore: (row: SkillDialogRow) => void;\n onInstall: (row: SkillDialogRow, preferenceScope: 'global' | 'project') => void;\n onUninstall: (row: SkillDialogRow) => void;\n}) => {\n const skill = props.row.skill;\n const description = getSkillDescription(skill);\n const canUninstall = skill.assignmentSource === 'USER_GLOBAL' || skill.assignmentSource === 'USER_WORKSPACE';\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\" marginBottom={1}>\n <box width=\"100%\" flexDirection=\"row\" justifyContent=\"space-between\" overflow=\"hidden\">\n <text fg={props.row.ignored ? props.theme.textMuted : props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n <b>{compactSkillName(getSkillDisplayName(skill))}</b>\n {' '}({getRowStateLabel(props.row)})\n </text>\n <box flexDirection=\"row\" flexShrink={0}>\n {props.row.state === 'installable' ? (\n <>\n <box onMouseUp={() => props.onInstall(props.row, 'global')} flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">Global</text>\n </box>\n <text fg={props.theme.textMuted} wrapMode=\"none\"> / </text>\n <box onMouseUp={() => props.onInstall(props.row, 'project')} flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">Project</text>\n </box>\n </>\n ) : (\n <>\n <box onMouseUp={() => props.onIgnore(props.row)} flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">\n {props.row.ignored ? 'Unignore' : 'Ignore'}\n </text>\n </box>\n {canUninstall ? (\n <>\n <text fg={props.theme.textMuted} wrapMode=\"none\"> / </text>\n <box onMouseUp={() => props.onUninstall(props.row)} flexShrink={0}>\n <text fg={props.theme.textMuted} wrapMode=\"none\">Uninstall</text>\n </box>\n </>\n ) : null}\n </>\n )}\n </box>\n </box>\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n {compactSkillMeta(getSkillMeta(skill, props.row.state))}\n </text>\n {description ? (\n <text fg={props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n {compactSkillDescription(description)}\n </text>\n ) : null}\n </box>\n );\n};\n\nconst WizardSkillsDialogContent = (props: {\n status: () => StatusState;\n actionNotice: () => PreferenceActionNotice;\n theme: TuiPluginApi['theme']['current'];\n onIgnoreSkill: (row: SkillDialogRow) => void;\n onInstallSkill: (row: SkillDialogRow, preferenceScope: 'global' | 'project') => void;\n onUninstallSkill: (row: SkillDialogRow) => void;\n}) => {\n const [page, setPage] = createSignal(0);\n const content = () => {\n const currentStatus = props.status();\n\n if (currentStatus.kind === 'loading') {\n return (\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n Refreshing published skills…\n </text>\n );\n }\n\n if (currentStatus.kind === 'error') {\n return (\n <text fg={props.theme.warning} wrapMode=\"none\" overflow=\"hidden\">\n unavailable: {compactStatusMessage(currentStatus.message)}\n </text>\n );\n }\n\n if (!currentStatus.snapshot.catalog) {\n return (\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n catalog {formatSkillsCatalogUnavailableMessage(currentStatus.snapshot)}\n </text>\n );\n }\n\n const { catalog } = currentStatus.snapshot;\n const activeSkillSlugs = new Set(catalog.skills.map((skill) => skill.skillSlug));\n const ignoredSkillSlugs = new Set(currentStatus.snapshot.ignoredPublishedSkills.skills.map((skill) => skill.skillSlug));\n const rows: SkillDialogRow[] = [\n ...catalog.skills.map((skill) => ({\n skill,\n ignored: false,\n state: skill.contextKind === 'global' ? ('installed-global' as const) : ('installed-project' as const),\n })),\n ...currentStatus.snapshot.ignoredPublishedSkills.skills.map((skill) => ({\n skill,\n ignored: true,\n state: skill.contextKind === 'global' ? ('installed-global' as const) : ('installed-project' as const),\n })),\n ...(currentStatus.snapshot.installableCatalog?.skills ?? [])\n .filter((skill) => !activeSkillSlugs.has(skill.skillSlug) && !ignoredSkillSlugs.has(skill.skillSlug))\n .map((skill) => ({ skill, ignored: false, state: 'installable' as const })),\n ];\n const totalPages = Math.max(1, Math.ceil(rows.length / SKILLS_PAGE_SIZE));\n const currentPage = Math.min(page(), totalPages - 1);\n const startIndex = currentPage * SKILLS_PAGE_SIZE;\n const endIndex = Math.min(startIndex + SKILLS_PAGE_SIZE, rows.length);\n const visibleRows = rows.slice(startIndex, endIndex);\n const canGoBack = currentPage > 0;\n const canGoForward = currentPage < totalPages - 1;\n const goBack = () => {\n if (!canGoBack) return;\n\n setPage(currentPage - 1);\n };\n const goForward = () => {\n if (!canGoForward) return;\n\n setPage(currentPage + 1);\n };\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n <box width=\"100%\" flexDirection=\"row\" justifyContent=\"space-between\" overflow=\"hidden\">\n <text fg={props.theme.text} wrapMode=\"none\" overflow=\"hidden\">\n <b>{catalog.publishedSkillCount} skills</b>\n · {catalog.assignmentCounts.global} global · {catalog.assignmentCounts.project} workspace\n · {currentStatus.snapshot.ignoredPublishedSkills.count} ignored\n · {currentStatus.snapshot.installableCatalog?.count ?? 0} installable\n </text>\n <text fg={props.theme.textMuted} wrapMode=\"none\">\n page {currentPage + 1}/{totalPages}\n </text>\n </box>\n <box width=\"100%\" flexDirection=\"column\" marginTop={1} overflow=\"hidden\">\n {visibleRows.map((row) => (\n <SkillCatalogRow\n row={row}\n theme={props.theme}\n onIgnore={props.onIgnoreSkill}\n onInstall={props.onInstallSkill}\n onUninstall={props.onUninstallSkill}\n />\n ))}\n </box>\n <box width=\"100%\" flexDirection=\"row\" justifyContent=\"space-between\" overflow=\"hidden\">\n <box onMouseUp={goBack} flexShrink={0}>\n <text fg={canGoBack ? props.theme.text : props.theme.textMuted} wrapMode=\"none\">\n ← Prev\n </text>\n </box>\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n {visibleRows.length} shown\n </text>\n <box onMouseUp={goForward} flexShrink={0}>\n <text fg={canGoForward ? props.theme.text : props.theme.textMuted} wrapMode=\"none\">\n Next →\n </text>\n </box>\n </box>\n </box>\n );\n };\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n <PreferenceActionNoticeRow notice={props.actionNotice()} theme={props.theme} />\n {content()}\n </box>\n );\n};\n\nconst PreferenceActionNoticeRow = (props: {\n notice: PreferenceActionNotice;\n theme: TuiPluginApi['theme']['current'];\n}) => {\n if (props.notice.kind === 'idle') return null;\n\n return (\n <text\n fg={props.notice.kind === 'error' ? props.theme.warning : props.theme.textMuted}\n wrapMode=\"none\"\n overflow=\"hidden\"\n >\n {compactStatusMessage(props.notice.message)}\n </text>\n );\n};\n\nconst ReadyRows = (props: { snapshot: PluginStatusSnapshot; theme: TuiPluginApi['theme']['current'] }) => {\n const statusRows = (\n <>\n <Row label=\"url\" value={formatBackendOriginLabel(props.snapshot.backendOrigin)} labelColor={props.theme.textMuted} valueColor={props.theme.text} />\n <Row label=\"auth\" value={formatAuthStatus(props.snapshot)} labelColor={props.theme.textMuted} valueColor={props.theme.text} />\n </>\n );\n\n if (!props.snapshot.catalog) {\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n {statusRows}\n <Row label=\"catalog\" value={formatSkillsCatalogUnavailableMessage(props.snapshot)} labelColor={props.theme.textMuted} valueColor={props.theme.text} />\n </box>\n );\n }\n\n const counts = props.snapshot.catalog.assignmentCounts;\n\n return (\n <box width=\"100%\" flexDirection=\"column\" overflow=\"hidden\">\n {statusRows}\n <text fg={props.theme.textMuted} wrapMode=\"none\" overflow=\"hidden\">\n catalog:\n </text>\n <CatalogBullet value={`${props.snapshot.catalog.publishedSkillCount} loaded`} theme={props.theme} />\n <CatalogBullet value={`${counts.global} global`} theme={props.theme} />\n <CatalogBullet value={`${counts.project} workspace`} theme={props.theme} />\n <CatalogBullet value={`${props.snapshot.ignoredPublishedSkills.count} ignored`} theme={props.theme} />\n </box>\n );\n};\n\nconst WizardSkillsDialog = (props: {\n api: TuiPluginApi;\n status: () => StatusState;\n refreshStatus: RefreshStatus;\n onClose: () => void;\n}) => {\n const theme = createMemo(() => props.api.theme.current);\n const [actionNotice, setActionNotice] = createSignal<PreferenceActionNotice>({ kind: 'idle' });\n\n const refreshAfterPreferenceChange = (message: string): void => {\n setActionNotice({ kind: 'success', message });\n props.refreshStatus({ showLoading: false });\n requestRender(props.api);\n };\n\n const showPreferenceFailure = (error: unknown): void => {\n setActionNotice({ kind: 'error', message: getErrorMessage(error) });\n props.refreshStatus({ showLoading: false });\n requestRender(props.api);\n };\n\n const ignoreSkill = (row: SkillDialogRow): void => {\n const currentStatus = props.status();\n if (currentStatus.kind !== 'ready') return;\n\n const scopeKey = currentStatus.snapshot.ignoredPublishedSkills.scopeKey;\n setActionNotice({ kind: 'pending', message: row.ignored ? 'Removing ignore preference…' : 'Ignoring skill…' });\n requestRender(props.api);\n void setPublishedSkillIgnored({\n worktree: props.api.state.path.worktree,\n directory: props.api.state.path.directory,\n scopeKey,\n skillSlug: row.skill.skillSlug,\n ignored: !row.ignored,\n preferenceScope: row.state === 'installed-global' ? 'global' : 'project',\n })\n .then(() => refreshAfterPreferenceChange(row.ignored ? 'Skill is no longer ignored.' : 'Skill ignored.'))\n .catch(showPreferenceFailure);\n };\n\n const installSkill = (row: SkillDialogRow, preferenceScope: 'global' | 'project'): void => {\n const currentStatus = props.status();\n if (currentStatus.kind !== 'ready') return;\n\n const scopeKey = currentStatus.snapshot.ignoredPublishedSkills.scopeKey;\n setActionNotice({ kind: 'pending', message: `Installing skill for ${preferenceScope}…` });\n requestRender(props.api);\n void setPublishedSkillInstalled({\n worktree: props.api.state.path.worktree,\n directory: props.api.state.path.directory,\n scopeKey,\n skillSlug: row.skill.skillSlug,\n installed: true,\n preferenceScope,\n })\n .then(() => refreshAfterPreferenceChange(`Skill installed for ${preferenceScope}.`))\n .catch(showPreferenceFailure);\n };\n\n const uninstallSkill = (row: SkillDialogRow): void => {\n const currentStatus = props.status();\n if (currentStatus.kind !== 'ready') return;\n\n const scopeKey = currentStatus.snapshot.ignoredPublishedSkills.scopeKey;\n setActionNotice({ kind: 'pending', message: 'Uninstalling skill…' });\n requestRender(props.api);\n void setPublishedSkillInstalled({\n worktree: props.api.state.path.worktree,\n directory: props.api.state.path.directory,\n scopeKey,\n skillSlug: row.skill.skillSlug,\n installed: false,\n preferenceScope: row.state === 'installed-global' ? 'global' : 'project',\n })\n .then(() => refreshAfterPreferenceChange('Skill uninstalled.'))\n .catch(showPreferenceFailure);\n };\n\n createEffect(() => {\n props.api.ui?.dialog?.setSize?.('xlarge');\n });\n\n return (\n <box width=\"100%\" flexDirection=\"column\" paddingLeft={1} paddingRight={1} paddingBottom={1}>\n <box width=\"100%\" flexDirection=\"row\" justifyContent=\"space-between\" overflow=\"hidden\">\n <text fg={theme().text} wrapMode=\"none\" overflow=\"hidden\">\n <b>Wizard Skills</b>\n </text>\n <box onMouseUp={props.onClose} flexShrink={0}>\n <text fg={theme().textMuted} wrapMode=\"none\">\n Close\n </text>\n </box>\n </box>\n <box width=\"100%\" flexDirection=\"column\" marginTop={1} overflow=\"hidden\">\n <WizardSkillsDialogContent\n status={props.status}\n actionNotice={actionNotice}\n theme={theme()}\n onIgnoreSkill={ignoreSkill}\n onInstallSkill={installSkill}\n onUninstallSkill={uninstallSkill}\n />\n </box>\n </box>\n );\n};\n\nconst openWizardSkillsDialog = (api: TuiPluginApi, status: () => StatusState, refreshStatus: RefreshStatus): void => {\n const dialog = api.ui?.dialog;\n if (!dialog?.replace) return;\n\n refreshStatus({ showLoading: true });\n\n dialog.replace(\n () => (\n <WizardSkillsDialog\n api={api}\n status={status}\n refreshStatus={refreshStatus}\n onClose={() => {\n dialog.clear?.();\n requestRender(api);\n }}\n />\n ),\n () => {\n requestRender(api);\n },\n );\n\n requestRender(api);\n};\n\nconst createWizardStatusSlot = (api: TuiPluginApi, status: () => StatusState, refreshStatus: RefreshStatus): TuiSlotPlugin => ({\n order: 240,\n slots: {\n home_bottom: () => (\n <Panel title=\"Wizard Skills\" theme={api.theme.current} onOpen={() => openWizardSkillsDialog(api, status, refreshStatus)}>\n <SkillsRows api={api} status={status} />\n </Panel>\n ),\n sidebar_content: (_ctx: TuiSlotContext, _value: { session_id: string }) => (\n <Panel title=\"Wizard Skills\" theme={api.theme.current} onOpen={() => openWizardSkillsDialog(api, status, refreshStatus)}>\n <SkillsRows api={api} status={status} />\n </Panel>\n ),\n },\n});\n\nconst loadStatus = async (api: TuiPluginApi): Promise<StatusState> => {\n try {\n const snapshot = await resolvePluginStatusSnapshotWithAuthBootstrap({\n worktree: api.state.path.worktree,\n directory: api.state.path.directory,\n signal: AbortSignal.timeout(STATUS_TIMEOUT_MS),\n });\n\n return {\n kind: 'ready',\n snapshot,\n };\n } catch (error) {\n return {\n kind: 'error',\n message: error instanceof Error ? error.message : 'Unable to load opencode-wizard status.',\n };\n }\n};\n\nconst tui: TuiPlugin = async (api) => {\n const [status, setStatus] = createSignal<StatusState>({ kind: 'loading' });\n const refreshStatus: RefreshStatus = (options) => {\n if (options?.showLoading) {\n setStatus({ kind: 'loading' });\n requestRender(api);\n }\n\n void loadStatus(api).then((nextStatus) => {\n setStatus(nextStatus);\n requestRender(api);\n });\n };\n\n api.slots.register(createWizardStatusSlot(api, status, refreshStatus));\n refreshStatus();\n setInterval(refreshStatus, STATUS_REFRESH_INTERVAL_MS);\n};\n\nexport default {\n id: PLUGIN_ID,\n tui,\n};\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aexol/opencode-wizard",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.16",
|
|
4
4
|
"description": "OpenCode plugin for opencode-wizard published skills",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"oc-plugin": [
|
|
@@ -21,8 +21,9 @@
|
|
|
21
21
|
"dist"
|
|
22
22
|
],
|
|
23
23
|
"scripts": {
|
|
24
|
-
"release:check": "npm run typecheck && npm run
|
|
24
|
+
"release:check": "npm run typecheck && npm run test",
|
|
25
25
|
"build": "node ./build.mjs",
|
|
26
|
+
"test": "npm run build && node --test \"test/**/*.test.mjs\"",
|
|
26
27
|
"typecheck": "tsc --noEmit -p tsconfig.json",
|
|
27
28
|
"smoke:published-skills": "node ./dist/smoke-published-skills.js"
|
|
28
29
|
},
|