{"_id":"@background-agents/sandbox-skills","name":"@background-agents/sandbox-skills","dist-tags":{"latest":"0.1.0"},"versions":{"0.1.0":{"name":"@background-agents/sandbox-skills","version":"0.1.0","description":"Skills registry client and sandbox operations for Daytona","type":"module","main":"./dist/index.cjs","module":"./dist/index.js","types":"./dist/index.d.ts","exports":{".":{"import":{"types":"./dist/index.d.ts","default":"./dist/index.js"},"require":{"types":"./dist/index.d.cts","default":"./dist/index.cjs"}},"./registry":{"import":{"types":"./dist/registry/index.d.ts","default":"./dist/registry/index.js"},"require":{"types":"./dist/registry/index.d.cts","default":"./dist/registry/index.cjs"}},"./sandbox":{"import":{"types":"./dist/sandbox/index.d.ts","default":"./dist/sandbox/index.js"},"require":{"types":"./dist/sandbox/index.d.cts","default":"./dist/sandbox/index.cjs"}},"./utils":{"import":{"types":"./dist/utils/index.d.ts","default":"./dist/utils/index.js"},"require":{"types":"./dist/utils/index.d.cts","default":"./dist/utils/index.cjs"}},"./package.json":"./package.json"},"scripts":{"build":"tsup src/index.ts src/registry/index.ts src/sandbox/index.ts src/utils/index.ts --format esm,cjs --dts --clean --sourcemap","clean":"rm -rf dist","typecheck":"tsc --noEmit","prepare":"npm run build"},"devDependencies":{"@daytonaio/sdk":"^0.170.0","@types/node":"^20.10.0","tsup":"^8.0.0","typescript":"^5.3.0"},"peerDependencies":{"@daytonaio/sdk":">=0.170.0"},"peerDependenciesMeta":{"@daytonaio/sdk":{"optional":true}},"publishConfig":{"access":"public"},"_id":"@background-agents/sandbox-skills@0.1.0","gitHead":"803bd192a97990ac03f5d559b923f7633a853c96","_nodeVersion":"20.20.2","_npmVersion":"10.8.2","dist":{"integrity":"sha512-XVIqeWKsjTYKTPGS2+SCgpjLhW8oWra5ybRWV9rglbqG18qQW4KcalP+7rL9DBegxH+uxP3loQFgOnp80K/5Zg==","shasum":"caf52bf6b54ffdbb0de4021b4f2b881ff1b9e9e8","tarball":"https://registry.npmjs.org/@background-agents/sandbox-skills/-/sandbox-skills-0.1.0.tgz","fileCount":34,"unpackedSize":132650,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDwIKD3iWdBCMGFmB51C58sqc/FWxMm68uA/OiZCvVAnAiA2c+zAI7f3wssi66lBJrWW9SKM3NeiCcZFPSQlJydTCQ=="}]},"_npmUser":{"name":"jamesmurdza","email":"jamesmurdza@gmail.com"},"directories":{},"maintainers":[{"name":"jamesmurdza","email":"jamesmurdza@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/sandbox-skills_0.1.0_1782598716673_0.22923497921506097"},"_hasShrinkwrap":false}},"time":{"created":"2026-06-27T22:18:36.507Z","0.1.0":"2026-06-27T22:18:36.825Z","modified":"2026-06-27T22:18:37.026Z"},"maintainers":[{"name":"jamesmurdza","email":"jamesmurdza@gmail.com"}],"description":"Skills registry client and sandbox operations for Daytona","readme":"# @background-agents/sandbox-skills\n\nSkills registry client and sandbox operations for Daytona sandboxes.\n\n## Overview\n\nThis package provides:\n- A registry client for searching the Skills.sh marketplace\n- Sandbox operations for installing/uninstalling skills in Daytona environments\n- Utilities for parsing CLI output\n\n## Installation\n\nThis is an internal workspace package. It's automatically available to other packages in the monorepo:\n\n```json\n{\n  \"dependencies\": {\n    \"@background-agents/sandbox-skills\": \"*\"\n  }\n}\n```\n\n## Usage\n\n### Search for Skills\n\n```typescript\nimport { searchSkills, SKILLS_API_BASE } from \"@background-agents/sandbox-skills/registry\"\n\n// Search the Skills.sh registry\nconst { results } = await searchSkills(\"react\")\n\nfor (const skill of results) {\n  console.log(`${skill.fullHandle} (${skill.installs} installs)`)\n}\n```\n\n### Install Skills in a Sandbox\n\n```typescript\nimport { Daytona } from \"@daytonaio/sdk\"\nimport { installSkill, uninstallSkill, listAvailableSkills } from \"@background-agents/sandbox-skills/sandbox\"\n\nconst daytona = new Daytona({ apiKey: process.env.DAYTONA_API_KEY })\nconst sandbox = await daytona.create()\n\n// List the skills a source repo offers (returns a Set<string> of skill names, or null)\nconst available = await listAvailableSkills(sandbox, \"/home/daytona/project\", \"owner/repo\")\n\n// Install a skill\nconst result = await installSkill(sandbox, \"/home/daytona/project\", \"owner/repo\", \"skill-id\")\n\n// Uninstall a skill\nawait uninstallSkill(sandbox, \"/home/daytona/project\", \"skill-id\")\n```\n\n## Exports\n\n### Types\n\n```typescript\nimport type {\n  SkillsApiResult,\n  SkillSearchResult,\n  SkillSearchResponse,\n  SkillInstallResult,\n  SkillsInstallResult,\n  SkillRecord,\n  DiscoveredSkill,\n} from \"@background-agents/sandbox-skills\"\n```\n\n### Registry Client\n\n```typescript\nimport { searchSkills, SKILLS_API_BASE } from \"@background-agents/sandbox-skills/registry\"\n```\n\n### Sandbox Operations\n\n```typescript\nimport {\n  listAvailableSkills,\n  installSkill,\n  installSkills,\n  parseSkillHandle,\n  uninstallSkill,\n  getSkillNameFromHandle,\n  discoverInstalledSkills,\n  type OnSkillRemove,\n} from \"@background-agents/sandbox-skills/sandbox\"\n```\n\n### Utilities\n\n```typescript\nimport { stripAnsi, parseSkillList, extractCleanError } from \"@background-agents/sandbox-skills/utils\"\n```\n\n## Requirements\n\n- Node.js >= 18\n- `@daytonaio/sdk` >= 0.170.0 (peer dependency for sandbox operations)\n\n## License\n\nMIT\n","readmeFilename":"README.md","_rev":"1-a53e5d695840c3161358b312c68a2475"}