@framers/agentos-skills-registry 0.1.0 → 0.2.1

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.
Files changed (62) hide show
  1. package/CONTRIBUTING.md +225 -0
  2. package/README.md +131 -30
  3. package/dist/catalog.d.ts +19 -6
  4. package/dist/catalog.d.ts.map +1 -1
  5. package/dist/catalog.js +54 -190
  6. package/dist/catalog.js.map +1 -1
  7. package/dist/index.d.ts +13 -5
  8. package/dist/index.d.ts.map +1 -1
  9. package/dist/index.js +17 -15
  10. package/dist/index.js.map +1 -1
  11. package/dist/schema-types.d.ts +79 -0
  12. package/dist/schema-types.d.ts.map +1 -0
  13. package/dist/schema-types.js +11 -0
  14. package/dist/schema-types.js.map +1 -0
  15. package/dist/workspace-discovery.d.ts +84 -0
  16. package/dist/workspace-discovery.d.ts.map +1 -0
  17. package/dist/workspace-discovery.js +211 -0
  18. package/dist/workspace-discovery.js.map +1 -0
  19. package/package.json +18 -8
  20. package/registry/community/.gitkeep +0 -0
  21. package/registry/curated/1password/SKILL.md +53 -0
  22. package/registry/curated/account-manager/SKILL.md +60 -0
  23. package/registry/curated/apple-notes/SKILL.md +45 -0
  24. package/registry/curated/apple-reminders/SKILL.md +46 -0
  25. package/registry/curated/blog-publisher/SKILL.md +110 -0
  26. package/registry/curated/bluesky-bot/SKILL.md +93 -0
  27. package/registry/curated/cloud-ops/SKILL.md +124 -0
  28. package/registry/curated/coding-agent/SKILL.md +40 -0
  29. package/registry/curated/content-creator/SKILL.md +53 -0
  30. package/registry/curated/deep-research/SKILL.md +56 -0
  31. package/registry/curated/discord-helper/SKILL.md +43 -0
  32. package/registry/curated/facebook-bot/SKILL.md +94 -0
  33. package/registry/curated/git/SKILL.md +39 -0
  34. package/registry/curated/github/SKILL.md +54 -0
  35. package/registry/curated/healthcheck/SKILL.md +43 -0
  36. package/registry/curated/image-gen/SKILL.md +44 -0
  37. package/registry/curated/instagram-bot/SKILL.md +60 -0
  38. package/registry/curated/linkedin-bot/SKILL.md +86 -0
  39. package/registry/curated/mastodon-bot/SKILL.md +104 -0
  40. package/registry/curated/notion/SKILL.md +43 -0
  41. package/registry/curated/obsidian/SKILL.md +42 -0
  42. package/registry/curated/pinterest-bot/SKILL.md +45 -0
  43. package/registry/curated/reddit-bot/SKILL.md +62 -0
  44. package/registry/curated/seo-campaign/SKILL.md +51 -0
  45. package/registry/curated/site-deploy/SKILL.md +119 -0
  46. package/registry/curated/slack-helper/SKILL.md +43 -0
  47. package/registry/curated/social-broadcast/SKILL.md +145 -0
  48. package/registry/curated/spotify-player/SKILL.md +45 -0
  49. package/registry/curated/summarize/SKILL.md +40 -0
  50. package/registry/curated/threads-bot/SKILL.md +82 -0
  51. package/registry/curated/tiktok-bot/SKILL.md +104 -0
  52. package/registry/curated/trello/SKILL.md +44 -0
  53. package/registry/curated/twitter-bot/SKILL.md +63 -0
  54. package/registry/curated/weather/SKILL.md +37 -0
  55. package/registry/curated/web-scraper/SKILL.md +60 -0
  56. package/registry/curated/web-search/SKILL.md +49 -0
  57. package/registry/curated/whisper-transcribe/SKILL.md +58 -0
  58. package/registry/curated/youtube-bot/SKILL.md +104 -0
  59. package/registry.json +1426 -0
  60. package/scripts/update-registry.mjs +126 -0
  61. package/scripts/validate-skill.mjs +298 -0
  62. package/types.d.ts +77 -0
@@ -0,0 +1,225 @@
1
+ # Contributing to @framers/agentos-skills-registry
2
+
3
+ Thank you for your interest in contributing a skill to the AgentOS ecosystem! This guide walks you through the process of creating, testing, and submitting a new skill.
4
+
5
+ ## Overview
6
+
7
+ Skills are **SKILL.md files** — each containing YAML frontmatter (metadata) and a markdown body (instructions for the AI agent). They live inside the `@framers/agentos-skills-registry` package alongside the typed SDK. There are no individual packages per skill.
8
+
9
+ Skills are organized into two tiers:
10
+
11
+ | Tier | Directory | Namespace | Maintained By | Verified |
12
+ | ------------- | --------------------- | ------------ | --------------------------- | -------- |
13
+ | **Curated** | `registry/curated/` | `wunderland` | Framers staff | Yes |
14
+ | **Community** | `registry/community/` | `community` | Original author / community | No |
15
+
16
+ Curated skills ship pre-verified and are maintained by the Framers team. Community skills are submitted via pull request by anyone and are maintained by their authors.
17
+
18
+ ## Creating a New Skill
19
+
20
+ ### Step 1 — Fork the repo
21
+
22
+ Fork [framersai/agentos-skills-registry](https://github.com/framersai/agentos-skills-registry) and clone it locally.
23
+
24
+ ```bash
25
+ git clone https://github.com/<your-username>/agentos-skills-registry.git
26
+ cd agentos-skills-registry
27
+ ```
28
+
29
+ ### Step 2 — Create the skill directory
30
+
31
+ Create a new directory under `registry/community/` with your skill name. The directory name must be lowercase, use hyphens for separators, and match the `name` field in your frontmatter.
32
+
33
+ ```bash
34
+ mkdir -p registry/community/my-skill
35
+ ```
36
+
37
+ ### Step 3 — Write the SKILL.md file
38
+
39
+ Create `registry/community/my-skill/SKILL.md` with two parts:
40
+
41
+ 1. **YAML frontmatter** between `---` delimiters containing metadata
42
+ 2. **Markdown body** containing instructions for the AI agent
43
+
44
+ The markdown body should be written in **2nd person** ("You can...", "Use the...") because it is injected directly into an agent's system prompt.
45
+
46
+ ### Step 4 — Write the YAML frontmatter
47
+
48
+ Fill in all required fields. See the [SKILL.md Format Reference](#skillmd-format-reference) below for the complete spec.
49
+
50
+ ### Step 5 — Write the markdown body
51
+
52
+ The body is the actual instructions the AI agent will follow. It should include:
53
+
54
+ - A heading with the skill name
55
+ - A description of what the skill enables the agent to do
56
+ - Step-by-step guidance for how the agent should use the skill
57
+ - An **Examples** section with concrete usage examples
58
+ - A **Constraints** section documenting limitations
59
+
60
+ ### Step 6 — Validate your skill
61
+
62
+ ```bash
63
+ npm run validate registry/community/my-skill/SKILL.md
64
+ ```
65
+
66
+ ## SKILL.md Format Reference
67
+
68
+ ### Required Fields
69
+
70
+ | Field | Type | Description |
71
+ | ------------- | ------ | -------------------------------------------------------------------------- |
72
+ | `name` | string | Skill identifier. Must match the directory name. Lowercase, hyphens only. |
73
+ | `version` | string | Semantic version (e.g., `'1.0.0'`). Quote it to avoid YAML parsing issues. |
74
+ | `description` | string | Short description, under 200 characters. |
75
+ | `author` | string | Your name or GitHub username. |
76
+ | `namespace` | string | Must be `community` for community submissions. |
77
+ | `category` | string | One of the valid categories listed below. |
78
+ | `tags` | array | At least one tag. Use lowercase, hyphenated strings. |
79
+
80
+ ### Optional Fields
81
+
82
+ | Field | Type | Description |
83
+ | --------------------------- | ------ | ------------------------------------------------------------------------- |
84
+ | `requires_secrets` | array | Secret keys the skill needs (e.g., `[service.token]`). Use `[]` if none. |
85
+ | `requires_tools` | array | Tool names the skill depends on (e.g., `[web-search]`). Use `[]` if none. |
86
+ | `metadata.agentos.emoji` | string | Emoji icon for the skill in UIs. |
87
+ | `metadata.agentos.homepage` | string | URL to the skill's related service or docs. |
88
+
89
+ ### Valid Categories
90
+
91
+ - `information` — Data lookup, search, knowledge retrieval
92
+ - `developer-tools` — Code, repos, CI/CD, debugging
93
+ - `communication` — Chat, email, messaging platforms
94
+ - `productivity` — Note-taking, task management, organization
95
+ - `devops` — Infrastructure, monitoring, deployment
96
+ - `media` — Audio, video, image, streaming
97
+ - `security` — Passwords, encryption, access control
98
+ - `creative` — Art, writing, design, generation
99
+
100
+ ### Full Template
101
+
102
+ Copy and paste this into `registry/community/<your-skill>/SKILL.md`:
103
+
104
+ ```markdown
105
+ ---
106
+ name: my-skill
107
+ version: '1.0.0'
108
+ description: A short description of what this skill does (under 200 characters).
109
+ author: your-github-username
110
+ namespace: community
111
+ category: information
112
+ tags: [example, template]
113
+ requires_secrets: []
114
+ requires_tools: []
115
+ metadata:
116
+ agentos:
117
+ emoji: "\U0001F527"
118
+ homepage: https://example.com
119
+ ---
120
+
121
+ # My Skill
122
+
123
+ You can use this skill to [describe what the agent can do]. When the user asks about [topic], you should [describe the agent's behavior].
124
+
125
+ Provide clear, structured responses. If the user's request is ambiguous, ask for clarification before proceeding.
126
+
127
+ ## Examples
128
+
129
+ - "Example user query 1"
130
+ - "Example user query 2"
131
+ - "Example user query 3"
132
+
133
+ ## Constraints
134
+
135
+ - Limitation or caveat 1.
136
+ - Limitation or caveat 2.
137
+ - Limitation or caveat 3.
138
+ ```
139
+
140
+ ## Testing Your Skill
141
+
142
+ Run the validation script against your SKILL.md file:
143
+
144
+ ```bash
145
+ npm run validate registry/community/my-skill/SKILL.md
146
+ ```
147
+
148
+ The validator checks:
149
+
150
+ - All required frontmatter fields are present
151
+ - Category is valid
152
+ - Description is under 200 characters
153
+ - Tags array has at least one entry
154
+ - Namespace is `community` or `wunderland`
155
+ - Skill name matches the directory name
156
+ - Markdown body is not empty
157
+ - No obvious secrets or API keys are embedded in the file
158
+
159
+ Fix any reported issues before submitting your PR.
160
+
161
+ ## Submitting a PR
162
+
163
+ ### 1. Create a branch
164
+
165
+ ```bash
166
+ git checkout -b add-skill/my-skill
167
+ ```
168
+
169
+ ### 2. Commit your SKILL.md
170
+
171
+ ```bash
172
+ git add registry/community/my-skill/SKILL.md
173
+ git commit -m "feat: add my-skill community skill"
174
+ ```
175
+
176
+ ### 3. Push and open a PR
177
+
178
+ ```bash
179
+ git push origin add-skill/my-skill
180
+ ```
181
+
182
+ Open a pull request against the `main` branch. The PR template will guide you through the checklist.
183
+
184
+ ### PR Checklist
185
+
186
+ Before submitting, confirm:
187
+
188
+ - [ ] Skill is in `registry/community/<name>/SKILL.md`
189
+ - [ ] All required YAML fields are present
190
+ - [ ] `namespace` is set to `community`
191
+ - [ ] Category is one of the 8 valid categories
192
+ - [ ] Description is under 200 characters
193
+ - [ ] Markdown body includes usage instructions, Examples, and Constraints
194
+ - [ ] No secrets, API keys, or credentials are in the file
195
+ - [ ] `npm run validate` passes
196
+
197
+ ### What Reviewers Look For
198
+
199
+ - **Quality**: Is the skill well-written? Are instructions clear and actionable?
200
+ - **No secrets**: The file must not contain API keys, tokens, passwords, or credentials.
201
+ - **Valid format**: Frontmatter must parse correctly with all required fields.
202
+ - **Usefulness**: Does the skill provide value that is not already covered by an existing skill?
203
+ - **Specificity**: Is the scope well-defined? Skills should do one thing well.
204
+
205
+ ## Promotion to Curated
206
+
207
+ Community skills can be promoted to the curated tier. Promotion criteria:
208
+
209
+ 1. **Longevity** — The skill has been in `registry/community/` for at least 3 months.
210
+ 2. **Positive feedback** — The skill has received positive user feedback or adoption.
211
+ 3. **Maintained** — The original author is responsive to issues and keeps the skill up to date.
212
+ 4. **Staff review** — A Framers team member reviews the skill for quality and completeness.
213
+
214
+ When a skill is promoted:
215
+
216
+ - It moves from `registry/community/<name>/` to `registry/curated/<name>/`.
217
+ - The `namespace` field changes from `community` to `wunderland`.
218
+ - The `verified` flag is set to `true` in `registry.json`.
219
+ - The Framers team assumes co-maintenance responsibility.
220
+
221
+ To nominate a community skill for promotion, open an issue titled "Promote: <skill-name>" with a brief justification.
222
+
223
+ ## Code of Conduct
224
+
225
+ This project follows the [Contributor Covenant Code of Conduct](https://www.contributor-covenant.org/version/2/1/code_of_conduct/). By participating, you agree to uphold this code. Please report unacceptable behavior to [team@frame.dev](mailto:team@frame.dev).
package/README.md CHANGED
@@ -1,6 +1,6 @@
1
1
  # @framers/agentos-skills-registry
2
2
 
3
- Curated skills registry bundle for [AgentOS](https://github.com/framersai/agentos) — lazy-loading DI of SKILL.md prompt modules.
3
+ Curated skills registry for [AgentOS](https://github.com/framersai/agentos) — 36 SKILL.md prompt modules, typed catalog, and lazy-loading factories.
4
4
 
5
5
  [![npm](https://img.shields.io/npm/v/@framers/agentos-skills-registry?logo=npm&color=cb3837)](https://www.npmjs.com/package/@framers/agentos-skills-registry)
6
6
 
@@ -10,17 +10,19 @@ npm install @framers/agentos-skills-registry
10
10
 
11
11
  ## What's Inside
12
12
 
13
- This package is the **typed SDK** on top of [`@framers/agentos-skills`](https://www.npmjs.com/package/@framers/agentos-skills). It provides:
13
+ This is the **single package** for AgentOS skills. It contains:
14
14
 
15
- - **Static catalog** (`SKILLS_CATALOG`) typed array of all 16+ curated skills with metadata
16
- - **Query helpers** — `searchSkills()`, `getSkillsByCategory()`, `getSkillsByTag()`, `getAvailableSkills()`, etc.
15
+ - **36 curated SKILL.md files** — prompt modules spanning social automation, developer tooling, productivity, research, and more
16
+ - **registry.json** — machine-readable index of all skills with metadata
17
+ - **Static catalog** (`SKILLS_CATALOG`) — typed array with query helpers
17
18
  - **Registry factories** — `createCuratedSkillRegistry()`, `createCuratedSkillSnapshot()` (requires `@framers/agentos`)
19
+ - **Validation script** — `npm run validate` to lint SKILL.md files
18
20
 
19
- ## Two Import Paths
21
+ ## Quick Start
20
22
 
21
- ### Lightweight (zero peer deps)
23
+ ### 1. Browse the catalog (zero deps)
22
24
 
23
- The `./catalog` sub-export works standalone — no `@framers/agentos` needed:
25
+ The `./catalog` sub-export has no peer dependencies:
24
26
 
25
27
  ```typescript
26
28
  import {
@@ -33,23 +35,46 @@ import {
33
35
  getSkillsByTag,
34
36
  } from '@framers/agentos-skills-registry/catalog';
35
37
 
36
- // Search
38
+ // Search across names, descriptions, and tags
37
39
  const matches = searchSkills('github');
38
40
 
39
41
  // Filter by category
40
- const devTools = getSkillsByCategory('developer-tools');
42
+ const social = getSkillsByCategory('social-automation');
41
43
 
42
44
  // Filter by installed tools
43
45
  const available = getAvailableSkills(['web-search', 'filesystem']);
44
46
 
45
- // All categories
47
+ // Get a specific skill
48
+ const github = getSkillByName('github');
49
+ console.log(github?.requiredSecrets); // ['github.token']
50
+
51
+ // All unique categories
46
52
  const categories = getCategories();
47
- // ['communication', 'creative', 'developer-tools', 'devops', 'information', ...]
53
+ // ['automation', 'communication', 'creative', 'developer-tools', 'social-automation', ...]
54
+ ```
55
+
56
+ ### 2. Load raw registry data
57
+
58
+ Access the JSON index directly:
59
+
60
+ ```typescript
61
+ import { getSkillsCatalog } from '@framers/agentos-skills-registry';
62
+
63
+ const catalog = await getSkillsCatalog();
64
+ console.log(catalog.skills.curated.length); // 36
65
+ console.log(catalog.version); // '1.0.0'
66
+ ```
67
+
68
+ Or import the raw JSON:
69
+
70
+ ```typescript
71
+ import registry from '@framers/agentos-skills-registry/registry.json';
72
+ console.log(registry.skills.curated[0].name); // 'weather'
48
73
  ```
49
74
 
50
- ### Full registry (requires @framers/agentos)
75
+ ### 3. Dynamically load skills into an agent (requires @framers/agentos)
51
76
 
52
- The factory functions lazy-load `@framers/agentos` via `dynamic import()` — only resolved when called:
77
+ The factory functions lazy-load `@framers/agentos` via dynamic `import()`:
53
78
 
54
79
  ```bash
55
80
  npm install @framers/agentos-skills-registry @framers/agentos
@@ -59,47 +84,123 @@ npm install @framers/agentos-skills-registry @framers/agentos
59
84
  import {
60
85
  createCuratedSkillRegistry,
61
86
  createCuratedSkillSnapshot,
87
+ getBundledCuratedSkillsDir,
62
88
  } from '@framers/agentos-skills-registry';
63
89
 
64
- // Create a live SkillRegistry loaded with all curated skills
90
+ // Option A: Create a live SkillRegistry loaded with all curated skills
65
91
  const registry = await createCuratedSkillRegistry();
66
- console.log(registry.size); // 16+
67
92
 
68
- // Build a prompt snapshot for agent injection
93
+ // Option B: Build a prompt snapshot for specific skills
69
94
  const snapshot = await createCuratedSkillSnapshot({
70
95
  skills: ['github', 'weather', 'notion'], // or 'all'
71
96
  platform: 'darwin',
72
97
  });
73
- console.log(snapshot.prompt); // Formatted markdown for the LLM
98
+
99
+ // Inject the snapshot prompt into your agent's system message
100
+ const systemPrompt = `You are an AI assistant.\n\n${snapshot.prompt}`;
101
+
102
+ // Option C: Get the directory path and load manually
103
+ const skillsDir = getBundledCuratedSkillsDir();
104
+ // → '/path/to/node_modules/@framers/agentos-skills-registry/registry/curated'
74
105
  ```
75
106
 
76
- If `@framers/agentos` is not installed and you call a factory function, you get a clear error:
107
+ ### 4. Dynamic skill resolution in Wunderland presets
77
108
 
109
+ ```typescript
110
+ // In agent.config.json:
111
+ // { "suggestedSkills": ["github", "web-search", "notion"] }
112
+
113
+ import { getSkillByName } from '@framers/agentos-skills-registry/catalog';
114
+ import { createCuratedSkillSnapshot } from '@framers/agentos-skills-registry';
115
+
116
+ // Validate skill names exist before loading
117
+ const skillNames = ['github', 'web-search', 'notion'];
118
+ const valid = skillNames.filter((name) => {
119
+ const entry = getSkillByName(name);
120
+ if (!entry) {
121
+ console.warn(`Unknown skill "${name}", skipping`);
122
+ return false;
123
+ }
124
+ return true;
125
+ });
126
+
127
+ // Build snapshot with only validated skills
128
+ const snapshot = await createCuratedSkillSnapshot({ skills: valid });
78
129
  ```
79
- Error: @framers/agentos is required for createCuratedSkillRegistry() and
80
- createCuratedSkillSnapshot(). Install it:
81
130
 
82
- npm install @framers/agentos
131
+ ## Two Import Paths
132
+
133
+ | Import | Peer deps | Use case |
134
+ |--------|-----------|----------|
135
+ | `@framers/agentos-skills-registry/catalog` | None | UI browsing, search, filtering |
136
+ | `@framers/agentos-skills-registry` | `@framers/agentos` (optional) | Runtime loading, snapshots, factories |
137
+
138
+ The `@framers/agentos` dependency is loaded **lazily** at runtime and cached after first resolution. If it's not installed and you call a factory function, you get a clear error with install instructions.
139
+
140
+ ## Included Skills (36)
141
+
142
+ The catalog now includes both foundational utility skills and social automation modules, including:
143
+
144
+ - Information and research: `web-search`, `weather`, `summarize`, `deep-research`
145
+ - Developer tools: `github`, `coding-agent`, `git`
146
+ - Productivity: `notion`, `obsidian`, `trello`, `apple-notes`, `apple-reminders`
147
+ - Social automation: `social-broadcast`, `twitter-bot`, `instagram-bot`, `linkedin-bot`, `facebook-bot`, `threads-bot`, `bluesky-bot`, `mastodon-bot`, `youtube-bot`, `tiktok-bot`, `pinterest-bot`, `reddit-bot`, `blog-publisher`
148
+ - Additional categories: `automation`, `communication`, `devops`, `media`, `marketing`, `creative`, `security`
149
+
150
+ ## Community Skills
151
+
152
+ The catalog supports both **curated** (staff-maintained) and **community** (PR-submitted) skills:
153
+
154
+ ```typescript
155
+ import { getCuratedSkills, getCommunitySkills } from '@framers/agentos-skills-registry/catalog';
83
156
 
84
- Or use the lightweight catalog helpers (getSkillsByCategory, searchSkills, etc.)
85
- which have no peer-dep requirement.
157
+ const curated = getCuratedSkills(); // Staff-verified skills
158
+ const community = getCommunitySkills(); // Community-contributed
86
159
  ```
87
160
 
88
- ## Lazy Loading
161
+ Each entry includes a `source` field (`'curated'` or `'community'`) for provenance filtering.
89
162
 
90
- The `@framers/agentos` dependency is loaded **lazily** at runtime via dynamic `import()` and cached after first resolution. This means:
163
+ ## Schema Types
91
164
 
92
- - `import { searchSkills } from '@framers/agentos-skills-registry/catalog'` — **zero** peer deps loaded
93
- - `import { createCuratedSkillRegistry } from '@framers/agentos-skills-registry'` — `@framers/agentos` loaded **only when called**
165
+ Import registry.json schema types for type-safe access:
166
+
167
+ ```typescript
168
+ import type {
169
+ SkillRegistryEntry,
170
+ SkillsRegistry,
171
+ SkillInstallSpec,
172
+ SkillMetadata,
173
+ } from '@framers/agentos-skills-registry';
174
+
175
+ // SkillRegistryEntry — shape of entries in registry.json
176
+ // SkillsRegistry — shape of the full registry.json file
177
+ // SkillInstallSpec — install instructions for skill dependencies
178
+ ```
179
+
180
+ ## Exports
181
+
182
+ | Export path | Contents |
183
+ |-------------|----------|
184
+ | `.` | Full SDK: catalog helpers + factory functions + schema types |
185
+ | `./catalog` | Lightweight: `SKILLS_CATALOG`, query helpers (zero deps) |
186
+ | `./registry.json` | Raw JSON index of all skills |
187
+ | `./types` | TypeScript declarations for registry.json schema |
94
188
 
95
189
  ## Relationship to Other Packages
96
190
 
97
191
  ```
98
- @framers/agentos-skills (data: SKILL.md files + JSON index)
99
- └── @framers/agentos-skills-registry ← You are here (SDK: typed queries + factories)
100
- └── @framers/agentos (optional peer: live SkillRegistry + snapshots)
192
+ @framers/agentos-skills-registry ← This package (data + SDK)
193
+ ├── registry/curated/*/SKILL.md (bundled prompt modules)
194
+ ├── registry.json (machine-readable index)
195
+ ├── catalog.ts (typed queries: search, filter, browse)
196
+ └── index.ts (factories: lazy-load @framers/agentos)
197
+ └── @framers/agentos (optional peer: live SkillRegistry + snapshots)
101
198
  ```
102
199
 
200
+ ## Contributing
201
+
202
+ See [CONTRIBUTING.md](./CONTRIBUTING.md) for how to submit new skills.
203
+
103
204
  ## License
104
205
 
105
206
  MIT
package/dist/catalog.d.ts CHANGED
@@ -2,9 +2,8 @@
2
2
  * @fileoverview Curated Skills Catalog for AgentOS
3
3
  * @module @framers/agentos-skills-registry/catalog
4
4
  *
5
- * Statically-typed catalog of all curated skills with metadata for
6
- * programmatic discovery, filtering by category/tag, and tool-based
7
- * availability checks.
5
+ * Programmatic catalog derived from registry.json so it stays in sync with
6
+ * bundled SKILL.md entries.
8
7
  */
9
8
  export interface SkillCatalogEntry {
10
9
  /** Unique skill name (matches directory name under registry/curated/) */
@@ -21,10 +20,12 @@ export interface SkillCatalogEntry {
21
20
  requiredSecrets: string[];
22
21
  /** Tool identifiers the skill depends on (e.g. 'web-search', 'filesystem') */
23
22
  requiredTools: string[];
24
- /** Relative path from the agentos-skills package root to the SKILL.md */
23
+ /** Relative path from the package root to the SKILL.md */
25
24
  skillPath: string;
26
- /** All curated skills are in the wunderland namespace */
27
- namespace: 'wunderland';
25
+ /** Skill source: curated (staff-maintained) or community-submitted */
26
+ source?: 'curated' | 'community';
27
+ /** Namespace used by the skill registry */
28
+ namespace: string;
28
29
  }
29
30
  export declare const SKILLS_CATALOG: SkillCatalogEntry[];
30
31
  /**
@@ -53,4 +54,16 @@ export declare function getSkillsByTag(tag: string): SkillCatalogEntry[];
53
54
  * Full-text search across skill names, descriptions, and tags.
54
55
  */
55
56
  export declare function searchSkills(query: string): SkillCatalogEntry[];
57
+ /**
58
+ * Get only staff-curated skills.
59
+ */
60
+ export declare function getCuratedSkills(): SkillCatalogEntry[];
61
+ /**
62
+ * Get only community-submitted skills.
63
+ */
64
+ export declare function getCommunitySkills(): SkillCatalogEntry[];
65
+ /**
66
+ * Get all skills (curated + community). Alias for SKILLS_CATALOG.
67
+ */
68
+ export declare function getAllSkills(): SkillCatalogEntry[];
56
69
  //# sourceMappingURL=catalog.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,MAAM,WAAW,iBAAiB;IAChC,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IAEb,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;IAEpB,oDAAoD;IACpD,WAAW,EAAE,MAAM,CAAC;IAEpB,kCAAkC;IAClC,QAAQ,EAAE,MAAM,CAAC;IAEjB,sBAAsB;IACtB,IAAI,EAAE,MAAM,EAAE,CAAC;IAEf,+DAA+D;IAC/D,eAAe,EAAE,MAAM,EAAE,CAAC;IAE1B,8EAA8E;IAC9E,aAAa,EAAE,MAAM,EAAE,CAAC;IAExB,yEAAyE;IACzE,SAAS,EAAE,MAAM,CAAC;IAElB,yDAAyD;IACzD,SAAS,EAAE,YAAY,CAAC;CACzB;AAMD,eAAO,MAAM,cAAc,EAAE,iBAAiB,EA+M7C,CAAC;AAMF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAEzE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAE1E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE,CAGhF;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,EAAE,CAExC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAG/D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAS/D"}
1
+ {"version":3,"file":"catalog.d.ts","sourceRoot":"","sources":["../src/catalog.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,MAAM,WAAW,iBAAiB;IAChC,yEAAyE;IACzE,IAAI,EAAE,MAAM,CAAC;IAEb,kCAAkC;IAClC,WAAW,EAAE,MAAM,CAAC;IAEpB,oDAAoD;IACpD,WAAW,EAAE,MAAM,CAAC;IAEpB,kCAAkC;IAClC,QAAQ,EAAE,MAAM,CAAC;IAEjB,sBAAsB;IACtB,IAAI,EAAE,MAAM,EAAE,CAAC;IAEf,+DAA+D;IAC/D,eAAe,EAAE,MAAM,EAAE,CAAC;IAE1B,8EAA8E;IAC9E,aAAa,EAAE,MAAM,EAAE,CAAC;IAExB,0DAA0D;IAC1D,SAAS,EAAE,MAAM,CAAC;IAElB,sEAAsE;IACtE,MAAM,CAAC,EAAE,SAAS,GAAG,WAAW,CAAC;IAEjC,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;CACnB;AAyCD,eAAO,MAAM,cAAc,EAAE,iBAAiB,EAE7C,CAAC;AAMF;;GAEG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAEzE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAE1E;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,cAAc,EAAE,MAAM,EAAE,GAAG,iBAAiB,EAAE,CAGhF;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,EAAE,CAExC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAG/D;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,EAAE,CAS/D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,iBAAiB,EAAE,CAEtD;AAED;;GAEG;AACH,wBAAgB,kBAAkB,IAAI,iBAAiB,EAAE,CAExD;AAED;;GAEG;AACH,wBAAgB,YAAY,IAAI,iBAAiB,EAAE,CAElD"}