/** * `agentsmarket skill enable-executor` — interactive wizard for attaching an * HTTPS executor_url to one of the caller's existing skills. * * M-stub-fix follow-up #2 (no CLI wizard for authors). Vertical wedge * onboarding: author publishes a skill, runs enable-executor, and their * skill becomes executable instead of returning 503 STUB_EXECUTION_DISABLED. * * Flow: * 1. Verify logged in (loadConfig); hint exit if not. * 2. Fetch author's published skills via GET /v1/agents/:id/published?type=skills. * 3. Pick one skill (numbered list). * 4. Prompt for executor URL (https:// only, ≤ 2048 chars). * 5. Show summary + y/N confirmation. * 6. PUT /v1/skills/:id with { executor_url }. * 7. Print success. * * Server-side: PUT only accepts { granted_to, is_private, executor_url }. * The "auto-bump" step surfaces the next patch version an author *would* use * to publish a new SKILL.md — informational only; PUT keeps the current row. * * Non-interactive mode: --skill-id --url --non-interactive. * * Interactive transport: node:readline (matches commands/clean.ts convention; * no new dependencies). */ export interface EnableExecutorOptions { nonInteractive?: boolean; skillId?: string; url?: string; } interface PublishedSkillRow { id: string; name: string; description?: string; price_usdc?: number; is_free?: number | boolean; } interface SkillDetailResponse { id: string; name: string; version: string; executor_url?: string | null; } interface UpdateResponse { ok: boolean; id: string; name: string; version: string; } /** Parse + validate an executor URL. Mirrors server-side validation. */ export declare function validateExecutorUrl(raw: string): { valid: boolean; hostname?: string; error?: string; }; /** * Bump a semver patch version. * 1.0.0 -> 1.0.1, 1.0.9 -> 1.0.10, 1.9.9 -> 1.9.10. * Returns input unchanged for non-semver strings. */ export declare function bumpPatchVersion(version: string): string; /** * Parse a skill selection: 1-based display index OR direct id match. */ export declare function parseSelection(raw: string, skills: Array<{ id: string; }>): { index: number; id: string; } | null; export declare function fetchMySkills(agentId: string): Promise; export declare function fetchSkillDetail(skillId: string): Promise; export declare function updateSkillExecutorUrl(skillId: string, executorUrl: string): Promise; export declare function enableExecutorCommand(opts?: EnableExecutorOptions): Promise; export {};