agent-worker 0.1.0 → 0.2.0

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/dist/index.d.mts CHANGED
@@ -313,7 +313,7 @@ declare const FRONTIER_MODELS: {
313
313
  */
314
314
  declare function createTools(definitions: ToolDefinition[]): Record<string, ai0.Tool<never, never>>;
315
315
  //#endregion
316
- //#region src/bash-tools.d.ts
316
+ //#region src/tools/bash.d.ts
317
317
  /**
318
318
  * Options for creating bash tools compatible with AgentSession
319
319
  */
@@ -569,4 +569,172 @@ declare function listBackends(): Promise<Array<{
569
569
  name: string;
570
570
  }>>;
571
571
  //#endregion
572
- export { type AgentMessage, type AgentResponse, AgentSession, type Backend, type BackendConfig, type BackendOptions, type BackendResponse, type BackendType, type BashToolkit, type BashToolsOptions, ClaudeCliBackend, type ClaudeCliOptions, CodexCliBackend, type CodexCliOptions, type CreateBashToolOptions, CursorCliBackend, type CursorCliOptions, FRONTIER_MODELS, type MessageStatus, type PendingApproval, SUPPORTED_PROVIDERS, SdkBackend, type SdkBackendOptions, type SendOptions, type SessionConfig, type SessionState, type StepInfo, type SupportedProvider, type TokenUsage, type ToolCall, type ToolDefinition, type Transcript, checkBackends, createBackend, createBashTool, createBashTools, createBashToolsFromDirectory, createBashToolsFromFiles, createModel, createModelAsync, createTools, listBackends };
572
+ //#region src/skills/provider.d.ts
573
+ interface SkillMetadata {
574
+ name: string;
575
+ description: string;
576
+ path: string;
577
+ }
578
+ declare class SkillsProvider {
579
+ private skills;
580
+ /**
581
+ * Add a single skill directory
582
+ */
583
+ addSkill(skillPath: string): Promise<void>;
584
+ /**
585
+ * Scan a directory and add all valid skills found
586
+ */
587
+ scanDirectory(dir: string): Promise<void>;
588
+ /**
589
+ * List all available skills (metadata only)
590
+ */
591
+ list(): Array<{
592
+ name: string;
593
+ description: string;
594
+ }>;
595
+ /**
596
+ * View the full SKILL.md content
597
+ */
598
+ view(skillName: string): Promise<string>;
599
+ /**
600
+ * Read a file within a skill directory (relative path)
601
+ */
602
+ readFile(skillName: string, relativePath: string): Promise<string>;
603
+ /**
604
+ * Parse YAML frontmatter from SKILL.md
605
+ */
606
+ private parseFrontmatter;
607
+ /**
608
+ * Resolve tilde and relative paths
609
+ */
610
+ private resolvePath;
611
+ /**
612
+ * Synchronous version: Add a single skill directory
613
+ */
614
+ addSkillSync(skillPath: string): void;
615
+ /**
616
+ * Synchronous version: Scan a directory and add all valid skills found
617
+ */
618
+ scanDirectorySync(dir: string): void;
619
+ /**
620
+ * Synchronous version: Parse YAML frontmatter from SKILL.md
621
+ */
622
+ private parseFrontmatterSync;
623
+ /**
624
+ * Add skills from a SkillImporter (async)
625
+ * Used for temporary imported skills during session lifecycle
626
+ */
627
+ addImportedSkills(importer: {
628
+ getAllImportedSkillPaths(): string[];
629
+ }): Promise<void>;
630
+ /**
631
+ * Add skills from a SkillImporter (sync)
632
+ */
633
+ addImportedSkillsSync(importer: {
634
+ getAllImportedSkillPaths(): string[];
635
+ }): void;
636
+ }
637
+ //#endregion
638
+ //#region src/tools/skills.d.ts
639
+ /**
640
+ * Create a Skills tool that provides access to agent skills
641
+ */
642
+ declare function createSkillsTool(provider: SkillsProvider): ToolDefinition;
643
+ //#endregion
644
+ //#region src/skills/importer.d.ts
645
+ interface ImportedSkill {
646
+ name: string;
647
+ source: string;
648
+ tempPath: string;
649
+ }
650
+ /**
651
+ * Temporary skill importer for session lifecycle
652
+ * Clones Git repos to temp directory and manages imported skills
653
+ */
654
+ declare class SkillImporter {
655
+ private tempDir;
656
+ private imported;
657
+ private sessionId;
658
+ constructor(sessionId: string);
659
+ /**
660
+ * Import skills from a Git repository
661
+ */
662
+ import(spec: string): Promise<string[]>;
663
+ /**
664
+ * Import skills from multiple specs
665
+ */
666
+ importMultiple(specs: string[]): Promise<string[]>;
667
+ /**
668
+ * Get path for an imported skill
669
+ */
670
+ getImportedSkillPath(skillName: string): string | null;
671
+ /**
672
+ * Get all imported skill paths
673
+ */
674
+ getAllImportedSkillPaths(): string[];
675
+ /**
676
+ * Get all imported skills metadata
677
+ */
678
+ getImportedSkills(): ImportedSkill[];
679
+ /**
680
+ * Get temporary directory path
681
+ */
682
+ getTempDir(): string;
683
+ /**
684
+ * Cleanup temporary directory
685
+ */
686
+ cleanup(): Promise<void>;
687
+ /**
688
+ * Clone Git repository (shallow clone)
689
+ */
690
+ private cloneRepo;
691
+ /**
692
+ * Extract skills from cloned repository
693
+ */
694
+ private extractSkills;
695
+ /**
696
+ * Find skills directory in repository
697
+ * Tries: skills/, agent-skills/, . (root)
698
+ */
699
+ private findSkillsDirectory;
700
+ /**
701
+ * Find all skills in a directory
702
+ */
703
+ private findAllSkills;
704
+ /**
705
+ * Execute git command
706
+ */
707
+ private execGit;
708
+ }
709
+ //#endregion
710
+ //#region src/skills/import-spec.d.ts
711
+ type GitProvider = 'github' | 'gitlab' | 'gitee';
712
+ interface ImportSpec {
713
+ provider: GitProvider;
714
+ owner: string;
715
+ repo: string;
716
+ ref: string;
717
+ skills: string[] | 'all';
718
+ rawSpec: string;
719
+ }
720
+ /**
721
+ * Parse import spec: [provider:]owner/repo[@ref]:{skill1,skill2,...}
722
+ *
723
+ * Examples:
724
+ * vercel-labs/agent-skills:react-best-practices
725
+ * vercel-labs/agent-skills:{react,web}
726
+ * vercel-labs/agent-skills@v1.0.0:react
727
+ * github:vercel-labs/agent-skills@main:react
728
+ * vercel-labs/agent-skills (imports all)
729
+ */
730
+ declare function parseImportSpec(spec: string): ImportSpec;
731
+ /**
732
+ * Build Git URL from import spec
733
+ */
734
+ declare function buildGitUrl(spec: ImportSpec): string;
735
+ /**
736
+ * Get display name for import spec
737
+ */
738
+ declare function getSpecDisplayName(spec: ImportSpec): string;
739
+ //#endregion
740
+ export { type AgentMessage, type AgentResponse, AgentSession, type Backend, type BackendConfig, type BackendOptions, type BackendResponse, type BackendType, type BashToolkit, type BashToolsOptions, ClaudeCliBackend, type ClaudeCliOptions, CodexCliBackend, type CodexCliOptions, type CreateBashToolOptions, CursorCliBackend, type CursorCliOptions, FRONTIER_MODELS, type GitProvider, type ImportSpec, type ImportedSkill, type MessageStatus, type PendingApproval, SUPPORTED_PROVIDERS, SdkBackend, type SdkBackendOptions, type SendOptions, type SessionConfig, type SessionState, SkillImporter, type SkillMetadata, SkillsProvider, type StepInfo, type SupportedProvider, type TokenUsage, type ToolCall, type ToolDefinition, type Transcript, buildGitUrl, checkBackends, createBackend, createBashTool, createBashTools, createBashToolsFromDirectory, createBashToolsFromFiles, createModel, createModelAsync, createSkillsTool, createTools, getSpecDisplayName, listBackends, parseImportSpec };
package/dist/index.mjs CHANGED
@@ -1,9 +1,8 @@
1
- import { i as createModelAsync, n as SUPPORTED_PROVIDERS, r as createModel, t as FRONTIER_MODELS } from "./models-FOOpWB91.mjs";
2
- import { n as createTools, t as AgentSession } from "./session-DQQAmPf-.mjs";
3
- import { a as CursorCliBackend, i as SdkBackend, n as createBackend, o as CodexCliBackend, r as listBackends, s as ClaudeCliBackend, t as checkBackends } from "./backends-BklSbwcH.mjs";
1
+ import { a as CursorCliBackend, c as FRONTIER_MODELS, d as createModelAsync, i as SdkBackend, l as SUPPORTED_PROVIDERS, n as createBackend, o as CodexCliBackend, r as listBackends, s as ClaudeCliBackend, t as checkBackends, u as createModel } from "./backends-BGJk-onJ.mjs";
2
+ import { a as createSkillsTool, c as createTools, i as parseImportSpec, n as buildGitUrl, o as SkillsProvider, r as getSpecDisplayName, s as AgentSession, t as SkillImporter } from "./skills-B8z8tFaH.mjs";
4
3
  import { createBashTool } from "bash-tool";
5
4
 
6
- //#region src/bash-tools.ts
5
+ //#region src/tools/bash.ts
7
6
  /**
8
7
  * Integration with Vercel's bash-tool for file system operations
9
8
  *
@@ -118,4 +117,4 @@ async function createBashToolsFromFiles(files, options = {}) {
118
117
  }
119
118
 
120
119
  //#endregion
121
- export { AgentSession, ClaudeCliBackend, CodexCliBackend, CursorCliBackend, FRONTIER_MODELS, SUPPORTED_PROVIDERS, SdkBackend, checkBackends, createBackend, createBashTool, createBashTools, createBashToolsFromDirectory, createBashToolsFromFiles, createModel, createModelAsync, createTools, listBackends };
120
+ export { AgentSession, ClaudeCliBackend, CodexCliBackend, CursorCliBackend, FRONTIER_MODELS, SUPPORTED_PROVIDERS, SdkBackend, SkillImporter, SkillsProvider, buildGitUrl, checkBackends, createBackend, createBashTool, createBashTools, createBashToolsFromDirectory, createBashToolsFromFiles, createModel, createModelAsync, createSkillsTool, createTools, getSpecDisplayName, listBackends, parseImportSpec };