@framers/agentos-extensions 1.0.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/LICENSE +23 -0
- package/README.md +193 -0
- package/package.json +67 -0
- package/registry.json +450 -0
- package/types.d.ts +67 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Framers
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
|
22
|
+
|
|
23
|
+
|
package/README.md
ADDED
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
<p align="center">
|
|
2
|
+
<a href="https://agentos.sh"><img src="logos/agentos-primary-transparent-2x.png" alt="AgentOS" height="64" /></a>
|
|
3
|
+
|
|
4
|
+
<a href="https://frame.dev" target="_blank" rel="noopener"><img src="logos/frame-logo-green-transparent-4x.png" alt="Frame.dev" height="64" /></a>
|
|
5
|
+
<br>
|
|
6
|
+
<small>by <a href="https://frame.dev" target="_blank" rel="noopener">Frame.dev</a></small>
|
|
7
|
+
</p>
|
|
8
|
+
|
|
9
|
+
# AgentOS Extensions
|
|
10
|
+
|
|
11
|
+
Official extension registry for the AgentOS ecosystem.
|
|
12
|
+
|
|
13
|
+
[](https://github.com/framersai/agentos-extensions/actions)
|
|
14
|
+
[](https://opensource.org/licenses/MIT)
|
|
15
|
+
[](https://framersai.github.io/agentos-extensions/)
|
|
16
|
+
|
|
17
|
+
## Published Extensions
|
|
18
|
+
|
|
19
|
+
All extensions are published to npm under the `@framers` scope.
|
|
20
|
+
|
|
21
|
+
| Package | Description | npm |
|
|
22
|
+
|---------|-------------|-----|
|
|
23
|
+
| [`@framers/agentos-ext-auth`](./registry/curated/auth) | JWT authentication & subscription management |  |
|
|
24
|
+
| [`@framers/agentos-ext-anchor-providers`](./registry/curated/provenance/anchor-providers) | Solana on-chain provenance anchoring |  |
|
|
25
|
+
| [`@framers/agentos-ext-tip-ingestion`](./registry/curated/provenance/wunderland-tip-ingestion) | Tip content processing pipeline |  |
|
|
26
|
+
| [`@framers/agentos-ext-web-search`](./registry/curated/research/web-search) | Multi-provider web search & fact-checking |  |
|
|
27
|
+
| [`@framers/agentos-ext-web-browser`](./registry/curated/research/web-browser) | Browser automation & content extraction |  |
|
|
28
|
+
| [`@framers/agentos-ext-telegram`](./registry/curated/integrations/telegram) | Telegram Bot API integration |  |
|
|
29
|
+
| [`@framers/agentos-ext-telegram-bot`](./registry/curated/communications/telegram-bot) | Telegram bot communications handler |  |
|
|
30
|
+
| [`@framers/agentos-ext-cli-executor`](./registry/curated/system/cli-executor) | Shell command execution & file management |  |
|
|
31
|
+
| [`@framers/agentos-ext-channel-telegram`](./registry/curated/channels/telegram) | Telegram messaging channel (grammY) |  |
|
|
32
|
+
| [`@framers/agentos-ext-channel-whatsapp`](./registry/curated/channels/whatsapp) | WhatsApp messaging channel (Baileys) |  |
|
|
33
|
+
| [`@framers/agentos-ext-channel-discord`](./registry/curated/channels/discord) | Discord messaging channel (discord.js) |  |
|
|
34
|
+
| [`@framers/agentos-ext-channel-slack`](./registry/curated/channels/slack) | Slack messaging channel (Bolt) |  |
|
|
35
|
+
| [`@framers/agentos-ext-channel-webchat`](./registry/curated/channels/webchat) | Built-in WebChat channel (Socket.IO) |  |
|
|
36
|
+
|
|
37
|
+
## Repository Structure
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
agentos-extensions/
|
|
41
|
+
├── .changeset/ # Changesets for versioning & publishing
|
|
42
|
+
├── .github/workflows/ # CI, release, TypeDoc pages
|
|
43
|
+
├── logos/ # Branding assets
|
|
44
|
+
├── templates/ # Starter templates for new extensions
|
|
45
|
+
│ ├── basic-tool/ # Single tool template
|
|
46
|
+
│ ├── multi-tool/ # Multiple tools template
|
|
47
|
+
│ ├── guardrail/ # Safety/compliance template
|
|
48
|
+
│ └── workflow/ # Multi-step process template
|
|
49
|
+
├── registry/
|
|
50
|
+
│ ├── curated/ # Official & verified extensions
|
|
51
|
+
│ │ ├── auth/ # Authentication & subscriptions
|
|
52
|
+
│ │ ├── communications/# Messaging (Telegram bot)
|
|
53
|
+
│ │ ├── integrations/ # External services (Telegram API)
|
|
54
|
+
│ │ ├── provenance/ # On-chain anchoring & tip ingestion
|
|
55
|
+
│ │ ├── research/ # Web search & browser automation
|
|
56
|
+
│ │ ├── channels/ # Messaging channels (Telegram, WhatsApp, Discord, Slack, WebChat)
|
|
57
|
+
│ │ └── system/ # CLI executor
|
|
58
|
+
│ └── community/ # Community-contributed extensions
|
|
59
|
+
├── scripts/ # Registry build & scaffolding tools
|
|
60
|
+
├── registry.json # Auto-generated extension manifest
|
|
61
|
+
├── pnpm-workspace.yaml # Workspace packages for publishing
|
|
62
|
+
└── typedoc.json # API docs config
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
## Quick Start
|
|
66
|
+
|
|
67
|
+
### Install an extension
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
npm install @framers/agentos-ext-web-search
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
### Use in your agent
|
|
74
|
+
|
|
75
|
+
```typescript
|
|
76
|
+
import { AgentOS } from '@framers/agentos';
|
|
77
|
+
import webSearch from '@framers/agentos-ext-web-search';
|
|
78
|
+
|
|
79
|
+
const agentos = new AgentOS();
|
|
80
|
+
await agentos.initialize({
|
|
81
|
+
extensionManifest: {
|
|
82
|
+
packs: [{
|
|
83
|
+
factory: () => webSearch({ /* config */ })
|
|
84
|
+
}]
|
|
85
|
+
}
|
|
86
|
+
});
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
### Create a new extension
|
|
90
|
+
|
|
91
|
+
```bash
|
|
92
|
+
# Use the scaffolding script
|
|
93
|
+
pnpm run create-extension
|
|
94
|
+
|
|
95
|
+
# Or copy a template
|
|
96
|
+
cp -r templates/basic-tool registry/curated/category/my-extension
|
|
97
|
+
cd registry/curated/category/my-extension
|
|
98
|
+
pnpm install
|
|
99
|
+
pnpm run dev
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
## Releasing & Publishing
|
|
103
|
+
|
|
104
|
+
This repo uses [Changesets](https://github.com/changesets/changesets) for multi-package versioning and npm publishing. See [RELEASING.md](./RELEASING.md) for the full workflow.
|
|
105
|
+
|
|
106
|
+
### TL;DR
|
|
107
|
+
|
|
108
|
+
```bash
|
|
109
|
+
# 1. Make your changes to one or more extensions
|
|
110
|
+
|
|
111
|
+
# 2. Add a changeset describing what changed
|
|
112
|
+
pnpm changeset
|
|
113
|
+
|
|
114
|
+
# 3. Commit and push to master
|
|
115
|
+
git add . && git commit -m "feat: my changes" && git push
|
|
116
|
+
|
|
117
|
+
# 4. The GitHub Action opens a "Version Packages" PR
|
|
118
|
+
# → Merge it to publish updated packages to npm
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
Each extension is versioned and published independently. A change to `web-search` does not bump `telegram`.
|
|
122
|
+
|
|
123
|
+
## Naming Convention
|
|
124
|
+
|
|
125
|
+
| Type | Pattern | Example |
|
|
126
|
+
|------|---------|---------|
|
|
127
|
+
| Extension | `@framers/agentos-ext-{name}` | `@framers/agentos-ext-web-search` |
|
|
128
|
+
| Template | `@framers/agentos-template-{type}` | `@framers/agentos-template-basic-tool` |
|
|
129
|
+
|
|
130
|
+
## CI/CD
|
|
131
|
+
|
|
132
|
+
All extensions get free CI/CD via GitHub Actions:
|
|
133
|
+
|
|
134
|
+
- **CI** (`ci.yml`): Lint, test, typecheck on every PR
|
|
135
|
+
- **Release** (`release.yml`): Changesets auto-version PRs + npm publish on merge
|
|
136
|
+
- **TypeDoc** (`pages-typedoc.yml`): API docs deployed to [framersai.github.io/agentos-extensions](https://framersai.github.io/agentos-extensions/)
|
|
137
|
+
- **Extension validation** (`extension-validation.yml`): Manifest & structure checks
|
|
138
|
+
- **Dependabot**: Automated dependency updates with auto-merge for patches
|
|
139
|
+
|
|
140
|
+
## Quality Standards
|
|
141
|
+
|
|
142
|
+
### All Extensions
|
|
143
|
+
|
|
144
|
+
- TypeScript with strict mode
|
|
145
|
+
- >80% test coverage
|
|
146
|
+
- MIT license
|
|
147
|
+
- No hardcoded secrets
|
|
148
|
+
|
|
149
|
+
### Additional for Curated
|
|
150
|
+
|
|
151
|
+
- Professional code review
|
|
152
|
+
- Performance benchmarks
|
|
153
|
+
- Integration tests
|
|
154
|
+
- Migration guides
|
|
155
|
+
|
|
156
|
+
## Documentation
|
|
157
|
+
|
|
158
|
+
- [API Reference (TypeDoc)](https://framersai.github.io/agentos-extensions/)
|
|
159
|
+
- [How Extensions Work](./HOW_EXTENSIONS_WORK.md)
|
|
160
|
+
- [Extension Architecture](./EXTENSION_ARCHITECTURE.md)
|
|
161
|
+
- [Auto-Loading Extensions](./AUTO_LOADING_EXTENSIONS.md)
|
|
162
|
+
- [Agency Collaboration Examples](./AGENCY_COLLABORATION_EXAMPLE.md)
|
|
163
|
+
- [Self-Hosted Registries](./SELF_HOSTED_REGISTRIES.md)
|
|
164
|
+
- [Migration Guide](./MIGRATION_GUIDE.md)
|
|
165
|
+
- [Releasing & Publishing](./RELEASING.md)
|
|
166
|
+
- [Contributing](./CONTRIBUTING.md)
|
|
167
|
+
|
|
168
|
+
## Contributing
|
|
169
|
+
|
|
170
|
+
See [CONTRIBUTING.md](./CONTRIBUTING.md) for detailed guidelines.
|
|
171
|
+
|
|
172
|
+
- [Submit New Extension](https://github.com/framersai/agentos-extensions/issues/new?template=new-extension.yml)
|
|
173
|
+
- [Report Bug](https://github.com/framersai/agentos-extensions/issues/new?template=bug-report.yml)
|
|
174
|
+
- [Request Feature](https://github.com/framersai/agentos-extensions/discussions)
|
|
175
|
+
|
|
176
|
+
## Links
|
|
177
|
+
|
|
178
|
+
- **Website**: [frame.dev](https://frame.dev)
|
|
179
|
+
- **AgentOS**: [agentos.sh](https://agentos.sh)
|
|
180
|
+
- **Marketplace**: [vca.chat](https://vca.chat)
|
|
181
|
+
- **npm**: [@framers](https://www.npmjs.com/org/framers)
|
|
182
|
+
- **API Docs**: [framersai.github.io/agentos-extensions](https://framersai.github.io/agentos-extensions/)
|
|
183
|
+
- **Contact**: team@frame.dev
|
|
184
|
+
|
|
185
|
+
## License
|
|
186
|
+
|
|
187
|
+
All extensions in this repository are MIT licensed.
|
|
188
|
+
|
|
189
|
+
<p align="center">
|
|
190
|
+
<a href="https://agentos.sh"><img src="logos/agentos-primary-transparent-2x.png" alt="AgentOS" height="48" /></a>
|
|
191
|
+
|
|
192
|
+
<a href="https://frame.dev" target="_blank" rel="noopener"><img src="logos/frame-logo-green-transparent-4x.png" alt="Frame.dev" height="48" /></a>
|
|
193
|
+
</p>
|
package/package.json
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@framers/agentos-extensions",
|
|
3
|
+
"version": "1.0.0",
|
|
4
|
+
"files": [
|
|
5
|
+
"registry.json",
|
|
6
|
+
"types.d.ts",
|
|
7
|
+
"README.md"
|
|
8
|
+
],
|
|
9
|
+
"description": "Community registry of tools, workflows, and integrations for AgentOS",
|
|
10
|
+
"type": "module",
|
|
11
|
+
"sideEffects": false,
|
|
12
|
+
"exports": {
|
|
13
|
+
".": {
|
|
14
|
+
"import": "./registry.json",
|
|
15
|
+
"types": "./types.d.ts"
|
|
16
|
+
},
|
|
17
|
+
"./registry.json": "./registry.json",
|
|
18
|
+
"./package.json": "./package.json"
|
|
19
|
+
},
|
|
20
|
+
"scripts": {
|
|
21
|
+
"test": "node -e \"console.log('agentos-extensions: test skipped in this monorepo build')\"",
|
|
22
|
+
"test:coverage": "npm run test",
|
|
23
|
+
"build": "node scripts/update-registry.js",
|
|
24
|
+
"lint": "node -e \"console.log('agentos-extensions: lint skipped in this monorepo build')\"",
|
|
25
|
+
"clean": "node -e \"console.log('agentos-extensions: clean noop in this monorepo build')\"",
|
|
26
|
+
"create-extension": "node scripts/create-extension.js",
|
|
27
|
+
"update-registry": "node scripts/update-registry.js",
|
|
28
|
+
"docs": "npx typedoc",
|
|
29
|
+
"changeset": "changeset",
|
|
30
|
+
"version-packages": "changeset version",
|
|
31
|
+
"release": "changeset publish"
|
|
32
|
+
},
|
|
33
|
+
"repository": {
|
|
34
|
+
"type": "git",
|
|
35
|
+
"url": "https://github.com/framersai/agentos-extensions.git"
|
|
36
|
+
},
|
|
37
|
+
"keywords": ["agentos", "extensions", "tools", "plugins"],
|
|
38
|
+
"author": {
|
|
39
|
+
"name": "Framers AI",
|
|
40
|
+
"email": "team@frame.dev",
|
|
41
|
+
"url": "https://frame.dev"
|
|
42
|
+
},
|
|
43
|
+
"contributors": [
|
|
44
|
+
{
|
|
45
|
+
"name": "Johnny Dunn",
|
|
46
|
+
"email": "johnnyfived@protonmail.com",
|
|
47
|
+
"url": "https://github.com/jddunn"
|
|
48
|
+
}
|
|
49
|
+
],
|
|
50
|
+
"license": "MIT",
|
|
51
|
+
"publishConfig": {
|
|
52
|
+
"access": "public"
|
|
53
|
+
},
|
|
54
|
+
"packageManager": "pnpm@10.15.1",
|
|
55
|
+
"pnpm": {
|
|
56
|
+
"overrides": {
|
|
57
|
+
"@framers/agentos": "^0.1.0"
|
|
58
|
+
}
|
|
59
|
+
},
|
|
60
|
+
"devDependencies": {
|
|
61
|
+
"@changesets/changelog-github": "^0.5.2",
|
|
62
|
+
"@changesets/cli": "^2.29.8",
|
|
63
|
+
"typedoc": "^0.25.13",
|
|
64
|
+
"typescript": "^5.4.5",
|
|
65
|
+
"vitest": "^1.6.0"
|
|
66
|
+
}
|
|
67
|
+
}
|
package/registry.json
ADDED
|
@@ -0,0 +1,450 @@
|
|
|
1
|
+
{
|
|
2
|
+
"version": "1.0.0",
|
|
3
|
+
"updated": "2026-02-06T13:43:47.685Z",
|
|
4
|
+
"categories": {
|
|
5
|
+
"templates": [
|
|
6
|
+
"basic-tool",
|
|
7
|
+
"guardrail",
|
|
8
|
+
"multi-tool"
|
|
9
|
+
],
|
|
10
|
+
"curated": [
|
|
11
|
+
"auth",
|
|
12
|
+
"communications",
|
|
13
|
+
"integrations",
|
|
14
|
+
"media",
|
|
15
|
+
"provenance",
|
|
16
|
+
"research",
|
|
17
|
+
"system"
|
|
18
|
+
],
|
|
19
|
+
"community": []
|
|
20
|
+
},
|
|
21
|
+
"extensions": {
|
|
22
|
+
"curated": [
|
|
23
|
+
{
|
|
24
|
+
"id": "com.framers.communications.telegram",
|
|
25
|
+
"name": "Telegram Bot Extension",
|
|
26
|
+
"package": "@framers/agentos-ext-telegram-bot",
|
|
27
|
+
"version": "1.1.0",
|
|
28
|
+
"category": "communications",
|
|
29
|
+
"path": "registry/curated/communications/telegram-bot",
|
|
30
|
+
"description": "Professional Telegram Bot API integration for AgentOS agents",
|
|
31
|
+
"author": {
|
|
32
|
+
"name": "Frame.dev",
|
|
33
|
+
"email": "support@frame.dev",
|
|
34
|
+
"url": "https://github.com/framersai"
|
|
35
|
+
},
|
|
36
|
+
"features": [
|
|
37
|
+
"Send text messages with formatting (Markdown/HTML)",
|
|
38
|
+
"Send photos, documents, and media",
|
|
39
|
+
"Manage chat settings and pins",
|
|
40
|
+
"Poll messages for context awareness",
|
|
41
|
+
"Rate limiting and retry logic",
|
|
42
|
+
"Environment variable support for credentials"
|
|
43
|
+
],
|
|
44
|
+
"tools": [
|
|
45
|
+
"telegramSendMessage",
|
|
46
|
+
"telegramSendPhoto",
|
|
47
|
+
"telegramSendDocument",
|
|
48
|
+
"telegramManageChat",
|
|
49
|
+
"telegramPollMessages"
|
|
50
|
+
],
|
|
51
|
+
"keywords": [
|
|
52
|
+
"telegram",
|
|
53
|
+
"bot",
|
|
54
|
+
"messaging",
|
|
55
|
+
"communications",
|
|
56
|
+
"chat",
|
|
57
|
+
"channels"
|
|
58
|
+
],
|
|
59
|
+
"npm": "https://www.npmjs.com/package/@framers/agentos-ext-telegram-bot",
|
|
60
|
+
"repository": "https://github.com/framersai/agentos-extensions/tree/master/registry/curated/communications/telegram-bot",
|
|
61
|
+
"verified": true,
|
|
62
|
+
"verifiedAt": "2026-02-06T13:43:47.685Z",
|
|
63
|
+
"verificationChecklistVersion": "1.0.0",
|
|
64
|
+
"downloads": 0
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"id": "com.framers.integrations.telegram",
|
|
68
|
+
"name": "Telegram Bot Extension",
|
|
69
|
+
"package": "@framers/agentos-ext-telegram",
|
|
70
|
+
"version": "1.1.0",
|
|
71
|
+
"category": "integrations",
|
|
72
|
+
"path": "registry/curated/integrations/telegram",
|
|
73
|
+
"description": "Professional Telegram Bot API integration for AgentOS - send messages, manage groups, handle callbacks",
|
|
74
|
+
"author": {
|
|
75
|
+
"name": "Frame.dev",
|
|
76
|
+
"email": "support@frame.dev",
|
|
77
|
+
"url": "https://github.com/framersai"
|
|
78
|
+
},
|
|
79
|
+
"features": [
|
|
80
|
+
"Send messages, photos, and documents",
|
|
81
|
+
"Manage groups (pin, descriptions, titles)",
|
|
82
|
+
"Handle inline keyboard callbacks",
|
|
83
|
+
"Flexible bot token configuration (env vars)",
|
|
84
|
+
"Rate limiting and queue management",
|
|
85
|
+
"Webhook and polling support",
|
|
86
|
+
"Markdown and HTML formatting"
|
|
87
|
+
],
|
|
88
|
+
"tools": [
|
|
89
|
+
"telegramSendMessage",
|
|
90
|
+
"telegramSendPhoto",
|
|
91
|
+
"telegramSendDocument",
|
|
92
|
+
"telegramGetChatInfo",
|
|
93
|
+
"telegramManageGroup",
|
|
94
|
+
"telegramHandleCallback"
|
|
95
|
+
],
|
|
96
|
+
"keywords": [
|
|
97
|
+
"telegram",
|
|
98
|
+
"bot",
|
|
99
|
+
"messaging",
|
|
100
|
+
"chat",
|
|
101
|
+
"communication",
|
|
102
|
+
"integration"
|
|
103
|
+
],
|
|
104
|
+
"npm": "https://www.npmjs.com/package/@framers/agentos-ext-telegram",
|
|
105
|
+
"repository": "https://github.com/framersai/agentos-extensions/tree/master/registry/curated/integrations/telegram",
|
|
106
|
+
"verified": true,
|
|
107
|
+
"verifiedAt": "2026-02-06T13:43:47.685Z",
|
|
108
|
+
"verificationChecklistVersion": "1.0.0",
|
|
109
|
+
"downloads": 0
|
|
110
|
+
},
|
|
111
|
+
{
|
|
112
|
+
"id": "com.framers.media.giphy",
|
|
113
|
+
"name": "Giphy GIF Search Extension",
|
|
114
|
+
"package": "@framers/agentos-ext-giphy",
|
|
115
|
+
"version": "1.0.0",
|
|
116
|
+
"category": "media",
|
|
117
|
+
"path": "registry/curated/media/giphy",
|
|
118
|
+
"description": "Search for GIFs and stickers via Giphy API for embedding in agent posts",
|
|
119
|
+
"author": {
|
|
120
|
+
"name": "Frame.dev",
|
|
121
|
+
"email": "support@frame.dev",
|
|
122
|
+
"url": "https://github.com/framersai"
|
|
123
|
+
},
|
|
124
|
+
"features": [],
|
|
125
|
+
"tools": [
|
|
126
|
+
"giphySearch"
|
|
127
|
+
],
|
|
128
|
+
"keywords": [
|
|
129
|
+
"giphy",
|
|
130
|
+
"gif",
|
|
131
|
+
"meme",
|
|
132
|
+
"media",
|
|
133
|
+
"sticker"
|
|
134
|
+
],
|
|
135
|
+
"npm": "https://www.npmjs.com/package/@framers/agentos-ext-giphy",
|
|
136
|
+
"repository": "https://github.com/framersai/agentos-extensions/tree/master/registry/curated/media/giphy",
|
|
137
|
+
"verified": true,
|
|
138
|
+
"verifiedAt": "2026-02-06T13:43:47.685Z",
|
|
139
|
+
"verificationChecklistVersion": "1.0.0",
|
|
140
|
+
"downloads": 0
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
"id": "com.framers.media.image-search",
|
|
144
|
+
"name": "Image Search Extension",
|
|
145
|
+
"package": "@framers/agentos-ext-image-search",
|
|
146
|
+
"version": "1.0.0",
|
|
147
|
+
"category": "media",
|
|
148
|
+
"path": "registry/curated/media/image-search",
|
|
149
|
+
"description": "Search for stock photos from Pexels, Unsplash, and Pixabay with automatic fallback",
|
|
150
|
+
"author": {
|
|
151
|
+
"name": "Frame.dev"
|
|
152
|
+
},
|
|
153
|
+
"features": [],
|
|
154
|
+
"tools": [
|
|
155
|
+
"imageSearch"
|
|
156
|
+
],
|
|
157
|
+
"keywords": [
|
|
158
|
+
"images",
|
|
159
|
+
"photos",
|
|
160
|
+
"pexels",
|
|
161
|
+
"unsplash",
|
|
162
|
+
"pixabay",
|
|
163
|
+
"stock"
|
|
164
|
+
],
|
|
165
|
+
"npm": "https://www.npmjs.com/package/@framers/agentos-ext-image-search",
|
|
166
|
+
"repository": "https://github.com/framersai/agentos-extensions/tree/master/registry/curated/media/image-search",
|
|
167
|
+
"verified": true,
|
|
168
|
+
"verifiedAt": "2026-02-06T13:43:47.685Z",
|
|
169
|
+
"verificationChecklistVersion": "1.0.0",
|
|
170
|
+
"downloads": 0
|
|
171
|
+
},
|
|
172
|
+
{
|
|
173
|
+
"id": "com.framers.media.voice-synthesis",
|
|
174
|
+
"name": "Voice Synthesis Extension",
|
|
175
|
+
"package": "@framers/agentos-ext-voice-synthesis",
|
|
176
|
+
"version": "1.0.0",
|
|
177
|
+
"category": "media",
|
|
178
|
+
"path": "registry/curated/media/voice-synthesis",
|
|
179
|
+
"description": "Text-to-speech synthesis via ElevenLabs for generating agent voice audio",
|
|
180
|
+
"author": {
|
|
181
|
+
"name": "Frame.dev"
|
|
182
|
+
},
|
|
183
|
+
"features": [],
|
|
184
|
+
"tools": [
|
|
185
|
+
"textToSpeech"
|
|
186
|
+
],
|
|
187
|
+
"keywords": [
|
|
188
|
+
"tts",
|
|
189
|
+
"voice",
|
|
190
|
+
"speech",
|
|
191
|
+
"elevenlabs",
|
|
192
|
+
"audio"
|
|
193
|
+
],
|
|
194
|
+
"npm": "https://www.npmjs.com/package/@framers/agentos-ext-voice-synthesis",
|
|
195
|
+
"repository": "https://github.com/framersai/agentos-extensions/tree/master/registry/curated/media/voice-synthesis",
|
|
196
|
+
"verified": true,
|
|
197
|
+
"verifiedAt": "2026-02-06T13:43:47.685Z",
|
|
198
|
+
"verificationChecklistVersion": "1.0.0",
|
|
199
|
+
"downloads": 0
|
|
200
|
+
},
|
|
201
|
+
{
|
|
202
|
+
"id": "com.framers.provenance.anchor-providers",
|
|
203
|
+
"name": "Provenance Anchor Providers",
|
|
204
|
+
"package": "@framers/agentos-ext-anchor-providers",
|
|
205
|
+
"version": "1.1.0",
|
|
206
|
+
"category": "provenance",
|
|
207
|
+
"path": "registry/curated/provenance/anchor-providers",
|
|
208
|
+
"description": "External anchor providers for the AgentOS provenance system — WORM storage, transparency logs, and blockchain timestamping",
|
|
209
|
+
"author": {
|
|
210
|
+
"name": "Frame.dev",
|
|
211
|
+
"email": "support@frame.dev",
|
|
212
|
+
"url": "https://github.com/framersai"
|
|
213
|
+
},
|
|
214
|
+
"features": [],
|
|
215
|
+
"tools": [
|
|
216
|
+
"wormSnapshotProvider",
|
|
217
|
+
"rekorProvider",
|
|
218
|
+
"openTimestampsProvider",
|
|
219
|
+
"ethereumProvider",
|
|
220
|
+
"solanaProvider"
|
|
221
|
+
],
|
|
222
|
+
"keywords": [
|
|
223
|
+
"provenance",
|
|
224
|
+
"anchor",
|
|
225
|
+
"blockchain",
|
|
226
|
+
"ethereum",
|
|
227
|
+
"opentimestamps",
|
|
228
|
+
"rekor",
|
|
229
|
+
"sigstore",
|
|
230
|
+
"worm",
|
|
231
|
+
"s3-object-lock",
|
|
232
|
+
"transparency-log",
|
|
233
|
+
"tamper-evidence"
|
|
234
|
+
],
|
|
235
|
+
"npm": "https://www.npmjs.com/package/@framers/agentos-ext-anchor-providers",
|
|
236
|
+
"repository": "https://github.com/framersai/agentos-extensions/tree/master/registry/curated/provenance/anchor-providers",
|
|
237
|
+
"verified": true,
|
|
238
|
+
"verifiedAt": "2026-02-06T13:43:47.685Z",
|
|
239
|
+
"verificationChecklistVersion": "1.0.0",
|
|
240
|
+
"downloads": 0
|
|
241
|
+
},
|
|
242
|
+
{
|
|
243
|
+
"id": "com.framers.provenance.wunderland-tip-ingestion",
|
|
244
|
+
"name": "Wunderland Tip Ingestion",
|
|
245
|
+
"package": "@framers/agentos-ext-tip-ingestion",
|
|
246
|
+
"version": "1.1.0",
|
|
247
|
+
"category": "provenance",
|
|
248
|
+
"path": "registry/curated/provenance/wunderland-tip-ingestion",
|
|
249
|
+
"description": "Deterministic IPFS pinning and on-chain tip ingestion utilities for Wunderland agents",
|
|
250
|
+
"author": {
|
|
251
|
+
"name": "Frame.dev",
|
|
252
|
+
"email": "support@frame.dev",
|
|
253
|
+
"url": "https://github.com/framersai"
|
|
254
|
+
},
|
|
255
|
+
"features": [],
|
|
256
|
+
"tools": [],
|
|
257
|
+
"keywords": [
|
|
258
|
+
"wunderland",
|
|
259
|
+
"agentos",
|
|
260
|
+
"provenance",
|
|
261
|
+
"tip-ingestion",
|
|
262
|
+
"ipfs",
|
|
263
|
+
"solana",
|
|
264
|
+
"blockchain"
|
|
265
|
+
],
|
|
266
|
+
"npm": "https://www.npmjs.com/package/@framers/agentos-ext-tip-ingestion",
|
|
267
|
+
"repository": "https://github.com/framersai/agentos-extensions/tree/master/registry/curated/provenance/wunderland-tip-ingestion",
|
|
268
|
+
"verified": true,
|
|
269
|
+
"verifiedAt": "2026-02-06T13:43:47.685Z",
|
|
270
|
+
"verificationChecklistVersion": "1.0.0",
|
|
271
|
+
"downloads": 0
|
|
272
|
+
},
|
|
273
|
+
{
|
|
274
|
+
"id": "com.framers.research.news-search",
|
|
275
|
+
"name": "News Search Extension",
|
|
276
|
+
"package": "@framers/agentos-ext-news-search",
|
|
277
|
+
"version": "1.0.0",
|
|
278
|
+
"category": "research",
|
|
279
|
+
"path": "registry/curated/research/news-search",
|
|
280
|
+
"description": "Search for recent news articles via NewsAPI for agent awareness of current events",
|
|
281
|
+
"author": {
|
|
282
|
+
"name": "Frame.dev"
|
|
283
|
+
},
|
|
284
|
+
"features": [],
|
|
285
|
+
"tools": [
|
|
286
|
+
"newsSearch"
|
|
287
|
+
],
|
|
288
|
+
"keywords": [
|
|
289
|
+
"news",
|
|
290
|
+
"articles",
|
|
291
|
+
"current-events",
|
|
292
|
+
"newsapi"
|
|
293
|
+
],
|
|
294
|
+
"npm": "https://www.npmjs.com/package/@framers/agentos-ext-news-search",
|
|
295
|
+
"repository": "https://github.com/framersai/agentos-extensions/tree/master/registry/curated/research/news-search",
|
|
296
|
+
"verified": true,
|
|
297
|
+
"verifiedAt": "2026-02-06T13:43:47.685Z",
|
|
298
|
+
"verificationChecklistVersion": "1.0.0",
|
|
299
|
+
"downloads": 0
|
|
300
|
+
},
|
|
301
|
+
{
|
|
302
|
+
"id": "com.framers.research.web-browser",
|
|
303
|
+
"name": "Web Browser Extension",
|
|
304
|
+
"package": "@framers/agentos-ext-web-browser",
|
|
305
|
+
"version": "1.1.0",
|
|
306
|
+
"category": "research",
|
|
307
|
+
"path": "registry/curated/research/web-browser",
|
|
308
|
+
"description": "Browser automation capabilities for AgentOS - navigate pages, scrape content, click links, and capture screenshots",
|
|
309
|
+
"author": {
|
|
310
|
+
"name": "Frame.dev",
|
|
311
|
+
"email": "support@frame.dev",
|
|
312
|
+
"url": "https://github.com/framersai"
|
|
313
|
+
},
|
|
314
|
+
"features": [],
|
|
315
|
+
"tools": [
|
|
316
|
+
"browserNavigate",
|
|
317
|
+
"browserScrape",
|
|
318
|
+
"browserClick",
|
|
319
|
+
"browserScreenshot",
|
|
320
|
+
"browserType"
|
|
321
|
+
],
|
|
322
|
+
"keywords": [
|
|
323
|
+
"browser",
|
|
324
|
+
"scraping",
|
|
325
|
+
"automation",
|
|
326
|
+
"puppeteer",
|
|
327
|
+
"playwright",
|
|
328
|
+
"web",
|
|
329
|
+
"navigate"
|
|
330
|
+
],
|
|
331
|
+
"npm": "https://www.npmjs.com/package/@framers/agentos-ext-web-browser",
|
|
332
|
+
"repository": "https://github.com/framersai/agentos-extensions/tree/master/registry/curated/research/web-browser",
|
|
333
|
+
"verified": true,
|
|
334
|
+
"verifiedAt": "2026-02-06T13:43:47.685Z",
|
|
335
|
+
"verificationChecklistVersion": "1.0.0",
|
|
336
|
+
"downloads": 0
|
|
337
|
+
},
|
|
338
|
+
{
|
|
339
|
+
"id": "com.framers.research.web-search",
|
|
340
|
+
"name": "Web Search Extension",
|
|
341
|
+
"package": "@framers/agentos-ext-web-search",
|
|
342
|
+
"version": "1.1.0",
|
|
343
|
+
"category": "research",
|
|
344
|
+
"path": "registry/curated/research/web-search",
|
|
345
|
+
"description": "Professional web search, research aggregation, and fact-checking capabilities for AgentOS",
|
|
346
|
+
"author": {
|
|
347
|
+
"name": "Frame.dev",
|
|
348
|
+
"email": "support@frame.dev",
|
|
349
|
+
"url": "https://github.com/framersai"
|
|
350
|
+
},
|
|
351
|
+
"features": [],
|
|
352
|
+
"tools": [
|
|
353
|
+
"webSearch",
|
|
354
|
+
"researchAggregator",
|
|
355
|
+
"factCheck"
|
|
356
|
+
],
|
|
357
|
+
"keywords": [
|
|
358
|
+
"search",
|
|
359
|
+
"web",
|
|
360
|
+
"research",
|
|
361
|
+
"fact-check",
|
|
362
|
+
"serper",
|
|
363
|
+
"serpapi",
|
|
364
|
+
"brave"
|
|
365
|
+
],
|
|
366
|
+
"npm": "https://www.npmjs.com/package/@framers/agentos-ext-web-search",
|
|
367
|
+
"repository": "https://github.com/framersai/agentos-extensions/tree/master/registry/curated/research/web-search",
|
|
368
|
+
"verified": true,
|
|
369
|
+
"verifiedAt": "2026-02-06T13:43:47.685Z",
|
|
370
|
+
"verificationChecklistVersion": "1.0.0",
|
|
371
|
+
"downloads": 0
|
|
372
|
+
},
|
|
373
|
+
{
|
|
374
|
+
"id": "com.framers.system.cli-executor",
|
|
375
|
+
"name": "CLI Executor Extension",
|
|
376
|
+
"package": "@framers/agentos-ext-cli-executor",
|
|
377
|
+
"version": "1.1.0",
|
|
378
|
+
"category": "system",
|
|
379
|
+
"path": "registry/curated/system/cli-executor",
|
|
380
|
+
"description": "Execute shell commands, run scripts, and manage processes for AgentOS agents",
|
|
381
|
+
"author": {
|
|
382
|
+
"name": "Frame.dev",
|
|
383
|
+
"email": "support@frame.dev",
|
|
384
|
+
"url": "https://github.com/framersai"
|
|
385
|
+
},
|
|
386
|
+
"features": [],
|
|
387
|
+
"tools": [
|
|
388
|
+
"shellExecute",
|
|
389
|
+
"shellScript",
|
|
390
|
+
"fileRead",
|
|
391
|
+
"fileWrite",
|
|
392
|
+
"listDirectory"
|
|
393
|
+
],
|
|
394
|
+
"keywords": [
|
|
395
|
+
"cli",
|
|
396
|
+
"shell",
|
|
397
|
+
"command",
|
|
398
|
+
"execute",
|
|
399
|
+
"terminal",
|
|
400
|
+
"bash",
|
|
401
|
+
"powershell",
|
|
402
|
+
"script"
|
|
403
|
+
],
|
|
404
|
+
"npm": "https://www.npmjs.com/package/@framers/agentos-ext-cli-executor",
|
|
405
|
+
"repository": "https://github.com/framersai/agentos-extensions/tree/master/registry/curated/system/cli-executor",
|
|
406
|
+
"verified": true,
|
|
407
|
+
"verifiedAt": "2026-02-06T13:43:47.685Z",
|
|
408
|
+
"verificationChecklistVersion": "1.0.0",
|
|
409
|
+
"downloads": 0
|
|
410
|
+
}
|
|
411
|
+
],
|
|
412
|
+
"community": [],
|
|
413
|
+
"templates": [
|
|
414
|
+
{
|
|
415
|
+
"id": "com.framers.template.basic-tool",
|
|
416
|
+
"name": "Template for creating AgentOS extensions",
|
|
417
|
+
"package": "@framers/agentos-template-basic-tool",
|
|
418
|
+
"version": "1.0.0",
|
|
419
|
+
"path": "templates/basic-tool",
|
|
420
|
+
"description": "Template for creating AgentOS extensions",
|
|
421
|
+
"repository": "https://github.com/framersai/agentos-extensions/tree/master/templates/basic-tool"
|
|
422
|
+
},
|
|
423
|
+
{
|
|
424
|
+
"id": "com.framers.template.guardrail",
|
|
425
|
+
"name": "Template for creating guardrail AgentOS extensions",
|
|
426
|
+
"package": "@framers/agentos-template-guardrail",
|
|
427
|
+
"version": "1.0.0",
|
|
428
|
+
"path": "templates/guardrail",
|
|
429
|
+
"description": "Template for creating guardrail AgentOS extensions",
|
|
430
|
+
"repository": "https://github.com/framersai/agentos-extensions/tree/master/templates/guardrail"
|
|
431
|
+
},
|
|
432
|
+
{
|
|
433
|
+
"id": "com.framers.template.multi-tool",
|
|
434
|
+
"name": "Template for creating multi-tool AgentOS extensions",
|
|
435
|
+
"package": "@framers/agentos-template-multi-tool",
|
|
436
|
+
"version": "1.0.0",
|
|
437
|
+
"path": "templates/multi-tool",
|
|
438
|
+
"description": "Template for creating multi-tool AgentOS extensions",
|
|
439
|
+
"repository": "https://github.com/framersai/agentos-extensions/tree/master/templates/multi-tool"
|
|
440
|
+
}
|
|
441
|
+
]
|
|
442
|
+
},
|
|
443
|
+
"stats": {
|
|
444
|
+
"totalExtensions": 14,
|
|
445
|
+
"curatedCount": 11,
|
|
446
|
+
"communityCount": 0,
|
|
447
|
+
"templateCount": 3,
|
|
448
|
+
"totalDownloads": 0
|
|
449
|
+
}
|
|
450
|
+
}
|
package/types.d.ts
ADDED
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Type declarations for @framers/agentos-extensions registry catalog.
|
|
3
|
+
* @module @framers/agentos-extensions
|
|
4
|
+
*/
|
|
5
|
+
|
|
6
|
+
export interface ExtensionAuthor {
|
|
7
|
+
name: string;
|
|
8
|
+
email?: string;
|
|
9
|
+
url?: string;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
export interface ExtensionEntry {
|
|
13
|
+
id: string;
|
|
14
|
+
name: string;
|
|
15
|
+
package: string;
|
|
16
|
+
version: string;
|
|
17
|
+
category: string;
|
|
18
|
+
path: string;
|
|
19
|
+
description: string;
|
|
20
|
+
author?: ExtensionAuthor;
|
|
21
|
+
features: string[];
|
|
22
|
+
tools: string[];
|
|
23
|
+
keywords: string[];
|
|
24
|
+
npm?: string;
|
|
25
|
+
repository?: string;
|
|
26
|
+
verified: boolean;
|
|
27
|
+
verifiedAt?: string;
|
|
28
|
+
verificationChecklistVersion?: string;
|
|
29
|
+
downloads: number;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
export interface TemplateEntry {
|
|
33
|
+
id: string;
|
|
34
|
+
name: string;
|
|
35
|
+
package: string;
|
|
36
|
+
version: string;
|
|
37
|
+
path: string;
|
|
38
|
+
description: string;
|
|
39
|
+
repository?: string;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
export interface RegistryStats {
|
|
43
|
+
totalExtensions: number;
|
|
44
|
+
curatedCount: number;
|
|
45
|
+
communityCount: number;
|
|
46
|
+
templateCount: number;
|
|
47
|
+
totalDownloads: number;
|
|
48
|
+
}
|
|
49
|
+
|
|
50
|
+
export interface ExtensionRegistry {
|
|
51
|
+
version: string;
|
|
52
|
+
updated: string;
|
|
53
|
+
categories: {
|
|
54
|
+
templates: string[];
|
|
55
|
+
curated: string[];
|
|
56
|
+
community: string[];
|
|
57
|
+
};
|
|
58
|
+
extensions: {
|
|
59
|
+
curated: ExtensionEntry[];
|
|
60
|
+
community: ExtensionEntry[];
|
|
61
|
+
templates: TemplateEntry[];
|
|
62
|
+
};
|
|
63
|
+
stats: RegistryStats;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
declare const registry: ExtensionRegistry;
|
|
67
|
+
export default registry;
|