allagents 0.1.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 +21 -0
- package/README.md +276 -0
- package/dist/index.js +26011 -0
- package/dist/templates/default/.allagents/workspace.yaml +15 -0
- package/dist/templates/default/AGENTS.md +14 -0
- package/package.json +62 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 EntityProcess
|
|
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.
|
package/README.md
ADDED
|
@@ -0,0 +1,276 @@
|
|
|
1
|
+
# AllAgents
|
|
2
|
+
|
|
3
|
+
CLI tool for managing multi-repo AI agent workspaces with plugin synchronization across multiple AI clients.
|
|
4
|
+
|
|
5
|
+
> **Attribution:** AllAgents is inspired by [dotagents](https://github.com/iannuttall/dotagents) by Ian Nuttall. While rewritten from scratch, we share the vision of unified AI agent configuration management. Thank you Ian for the inspiration!
|
|
6
|
+
|
|
7
|
+
## Why AllAgents?
|
|
8
|
+
|
|
9
|
+
**The Problem:** AI coding assistants (Claude, Copilot, Cursor, Codex, etc.) each have their own configuration formats and directory structures. If you want to share skills, commands, or prompts across multiple projects or use multiple AI clients, you need to manually copy and transform files.
|
|
10
|
+
|
|
11
|
+
**AllAgents solves this by:**
|
|
12
|
+
|
|
13
|
+
| Feature | Claude Code Plugins | AllAgents |
|
|
14
|
+
|---------|--------------------|-----------|
|
|
15
|
+
| Scope | Single project | Multi-repo workspace |
|
|
16
|
+
| Client support | Claude only | 8 AI clients |
|
|
17
|
+
| File location | Runtime lookup from cache | Copied to workspace (git-versioned) |
|
|
18
|
+
| Project structure | AI config mixed with code | Separate workspace repo |
|
|
19
|
+
|
|
20
|
+
### Key Differentiators
|
|
21
|
+
|
|
22
|
+
1. **Multi-repo workspaces** - One workspace references multiple project repositories. Your AI tooling lives separately from your application code.
|
|
23
|
+
|
|
24
|
+
2. **Multi-client distribution** - Write plugins once, sync to all clients. AllAgents transforms and copies files to each client's expected paths.
|
|
25
|
+
|
|
26
|
+
3. **Workspace is a git repo** - Unlike Claude's runtime plugin system, AllAgents copies files into your workspace. Team members get the same AI tooling via git.
|
|
27
|
+
|
|
28
|
+
4. **Clean separation** - Project repos stay clean. AI configuration lives in the workspace.
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
┌─────────────────┐
|
|
32
|
+
│ Marketplace │ (plugin source - GitHub repos)
|
|
33
|
+
└────────┬────────┘
|
|
34
|
+
│
|
|
35
|
+
▼
|
|
36
|
+
┌─────────────────┐
|
|
37
|
+
│ AllAgents │ (sync & transform)
|
|
38
|
+
│ workspace sync │
|
|
39
|
+
└────────┬────────┘
|
|
40
|
+
│
|
|
41
|
+
┌────┴────┬────────┬─────────┐
|
|
42
|
+
▼ ▼ ▼ ▼
|
|
43
|
+
.claude/ .github/ .cursor/ .codex/ (client-specific paths)
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
## Installation
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
# Using bun
|
|
50
|
+
bun install -g allagents
|
|
51
|
+
|
|
52
|
+
# Or run directly
|
|
53
|
+
bunx allagents
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
## Quick Start
|
|
57
|
+
|
|
58
|
+
```bash
|
|
59
|
+
# Create a new workspace
|
|
60
|
+
allagents workspace init my-workspace
|
|
61
|
+
cd my-workspace
|
|
62
|
+
|
|
63
|
+
# Add a marketplace (or let auto-registration handle it)
|
|
64
|
+
allagents plugin marketplace add anthropics/claude-plugins-official
|
|
65
|
+
|
|
66
|
+
# Add plugins to workspace
|
|
67
|
+
allagents workspace plugin add code-review@claude-plugins-official
|
|
68
|
+
allagents workspace plugin add my-plugin@someuser/their-repo
|
|
69
|
+
|
|
70
|
+
# Sync plugins to workspace
|
|
71
|
+
allagents workspace sync
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
## Commands
|
|
75
|
+
|
|
76
|
+
### Workspace Commands
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
# Initialize a new workspace from template
|
|
80
|
+
allagents workspace init <path>
|
|
81
|
+
|
|
82
|
+
# Sync all plugins to workspace
|
|
83
|
+
allagents workspace sync [options]
|
|
84
|
+
--force Force overwrite of local changes
|
|
85
|
+
--dry-run Preview changes without applying
|
|
86
|
+
|
|
87
|
+
# Show status of workspace and plugins
|
|
88
|
+
allagents workspace status
|
|
89
|
+
|
|
90
|
+
# Add a plugin to .allagents/workspace.yaml (auto-registers marketplace if needed)
|
|
91
|
+
allagents workspace plugin add <plugin@marketplace>
|
|
92
|
+
|
|
93
|
+
# Remove a plugin from .allagents/workspace.yaml
|
|
94
|
+
allagents workspace plugin remove <plugin>
|
|
95
|
+
```
|
|
96
|
+
|
|
97
|
+
### Plugin Marketplace Commands
|
|
98
|
+
|
|
99
|
+
```bash
|
|
100
|
+
# List registered marketplaces
|
|
101
|
+
allagents plugin marketplace list
|
|
102
|
+
|
|
103
|
+
# Add a marketplace from GitHub or local path
|
|
104
|
+
allagents plugin marketplace add <source>
|
|
105
|
+
# Examples:
|
|
106
|
+
# allagents plugin marketplace add anthropics/claude-plugins-official
|
|
107
|
+
# allagents plugin marketplace add /path/to/local/marketplace
|
|
108
|
+
|
|
109
|
+
# Remove a marketplace
|
|
110
|
+
allagents plugin marketplace remove <name>
|
|
111
|
+
|
|
112
|
+
# Update marketplace(s) from remote
|
|
113
|
+
allagents plugin marketplace update [name]
|
|
114
|
+
```
|
|
115
|
+
|
|
116
|
+
### Plugin Commands
|
|
117
|
+
|
|
118
|
+
```bash
|
|
119
|
+
# List available plugins from marketplaces
|
|
120
|
+
allagents plugin list [marketplace]
|
|
121
|
+
|
|
122
|
+
# Validate a plugin or marketplace structure
|
|
123
|
+
allagents plugin validate <path>
|
|
124
|
+
```
|
|
125
|
+
|
|
126
|
+
## .allagents/workspace.yaml
|
|
127
|
+
|
|
128
|
+
The workspace configuration file lives in `.allagents/workspace.yaml` and defines repositories, plugins, and target clients:
|
|
129
|
+
|
|
130
|
+
```yaml
|
|
131
|
+
repositories:
|
|
132
|
+
- path: ../my-project
|
|
133
|
+
owner: myorg
|
|
134
|
+
repo: my-project
|
|
135
|
+
description: Main project repository
|
|
136
|
+
- path: ../my-api
|
|
137
|
+
owner: myorg
|
|
138
|
+
repo: my-api
|
|
139
|
+
description: API service
|
|
140
|
+
|
|
141
|
+
plugins:
|
|
142
|
+
- code-review@claude-plugins-official # plugin@marketplace format
|
|
143
|
+
- context7@claude-plugins-official
|
|
144
|
+
- my-plugin@someuser/their-repo # fully qualified for custom marketplaces
|
|
145
|
+
|
|
146
|
+
clients:
|
|
147
|
+
- claude
|
|
148
|
+
- copilot
|
|
149
|
+
- cursor
|
|
150
|
+
```
|
|
151
|
+
|
|
152
|
+
### Plugin Spec Format
|
|
153
|
+
|
|
154
|
+
Plugins use the `plugin@marketplace` format:
|
|
155
|
+
|
|
156
|
+
| Format | Example | Description |
|
|
157
|
+
|--------|---------|-------------|
|
|
158
|
+
| Well-known | `code-review@claude-plugins-official` | Uses known marketplace mapping |
|
|
159
|
+
| owner/repo | `my-plugin@owner/repo` | Auto-registers GitHub repo, looks in `plugins/` |
|
|
160
|
+
| owner/repo/subpath | `my-plugin@owner/repo/extensions` | Looks in custom subdirectory |
|
|
161
|
+
|
|
162
|
+
The subpath format is useful when plugins aren't in the standard `plugins/` directory:
|
|
163
|
+
|
|
164
|
+
```yaml
|
|
165
|
+
plugins:
|
|
166
|
+
- feature-dev@anthropics/claude-plugins-official/plugins # explicit plugins/ dir
|
|
167
|
+
- my-addon@someuser/repo/addons # custom addons/ dir
|
|
168
|
+
- tool@org/monorepo/packages/tools # nested path
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
### Well-Known Marketplaces
|
|
172
|
+
|
|
173
|
+
These marketplace names auto-resolve to their GitHub repos:
|
|
174
|
+
|
|
175
|
+
- `claude-plugins-official` → `anthropics/claude-plugins-official`
|
|
176
|
+
|
|
177
|
+
### Supported Clients
|
|
178
|
+
|
|
179
|
+
| Client | Commands | Skills | Agent File | Hooks |
|
|
180
|
+
|--------|----------|--------|------------|-------|
|
|
181
|
+
| claude | `.claude/commands/` | `.claude/skills/` | `CLAUDE.md` | `.claude/hooks/` |
|
|
182
|
+
| copilot | `.github/prompts/*.prompt.md` | `.github/skills/` | `AGENTS.md` | No |
|
|
183
|
+
| codex | `.codex/prompts/` | `.codex/skills/` | `AGENTS.md` | No |
|
|
184
|
+
| cursor | `.cursor/commands/` | `.cursor/skills/` | No | No |
|
|
185
|
+
| opencode | `.opencode/commands/` | `.opencode/skills/` | `AGENTS.md` | No |
|
|
186
|
+
| gemini | `.gemini/commands/` | `.gemini/skills/` | `GEMINI.md` | No |
|
|
187
|
+
| factory | `.factory/commands/` | `.factory/skills/` | `AGENTS.md` | `.factory/hooks/` |
|
|
188
|
+
| ampcode | N/A | N/A | `AGENTS.md` | No |
|
|
189
|
+
|
|
190
|
+
## Marketplace Structure
|
|
191
|
+
|
|
192
|
+
Marketplaces contain multiple plugins:
|
|
193
|
+
|
|
194
|
+
```
|
|
195
|
+
my-marketplace/
|
|
196
|
+
├── plugins/
|
|
197
|
+
│ ├── code-review/
|
|
198
|
+
│ │ ├── plugin.json
|
|
199
|
+
│ │ ├── commands/
|
|
200
|
+
│ │ └── skills/
|
|
201
|
+
│ └── debugging/
|
|
202
|
+
│ ├── plugin.json
|
|
203
|
+
│ ├── commands/
|
|
204
|
+
│ └── skills/
|
|
205
|
+
└── README.md
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
## Plugin Structure
|
|
209
|
+
|
|
210
|
+
Each plugin follows this structure:
|
|
211
|
+
|
|
212
|
+
```
|
|
213
|
+
my-plugin/
|
|
214
|
+
├── plugin.json # Plugin metadata
|
|
215
|
+
├── commands/ # Command files (.md)
|
|
216
|
+
│ ├── build.md
|
|
217
|
+
│ └── deploy.md
|
|
218
|
+
├── skills/ # Skill directories with SKILL.md
|
|
219
|
+
│ └── debugging/
|
|
220
|
+
│ └── SKILL.md
|
|
221
|
+
├── hooks/ # Hook files (for Claude/Factory)
|
|
222
|
+
│ └── pre-commit.md
|
|
223
|
+
└── AGENTS.md # Agent configuration (optional)
|
|
224
|
+
```
|
|
225
|
+
|
|
226
|
+
### Skill Validation
|
|
227
|
+
|
|
228
|
+
Skills must have a valid `SKILL.md` file with YAML frontmatter:
|
|
229
|
+
|
|
230
|
+
```yaml
|
|
231
|
+
---
|
|
232
|
+
name: my-skill # Required: lowercase, alphanumeric + hyphens, max 64 chars
|
|
233
|
+
description: Description of the skill # Required
|
|
234
|
+
allowed-tools: # Optional
|
|
235
|
+
- Read
|
|
236
|
+
- Write
|
|
237
|
+
model: claude-3-opus # Optional
|
|
238
|
+
---
|
|
239
|
+
|
|
240
|
+
# Skill Content
|
|
241
|
+
|
|
242
|
+
Skill instructions go here...
|
|
243
|
+
```
|
|
244
|
+
|
|
245
|
+
## Storage Locations
|
|
246
|
+
|
|
247
|
+
```
|
|
248
|
+
~/.allagents/
|
|
249
|
+
├── marketplaces.json # Registry of marketplaces
|
|
250
|
+
└── marketplaces/ # Cloned marketplace repos
|
|
251
|
+
├── claude-plugins-official/
|
|
252
|
+
└── someuser-their-repo/
|
|
253
|
+
```
|
|
254
|
+
|
|
255
|
+
## Development
|
|
256
|
+
|
|
257
|
+
```bash
|
|
258
|
+
# Install dependencies
|
|
259
|
+
bun install
|
|
260
|
+
|
|
261
|
+
# Run in development
|
|
262
|
+
bun run dev workspace init test-ws
|
|
263
|
+
|
|
264
|
+
# Run tests
|
|
265
|
+
bun run test
|
|
266
|
+
|
|
267
|
+
# Type check
|
|
268
|
+
bun run typecheck
|
|
269
|
+
|
|
270
|
+
# Build
|
|
271
|
+
bun run build
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
## License
|
|
275
|
+
|
|
276
|
+
MIT
|