Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 3 additions & 1 deletion docs/src/content/docs/docs/getting-started/quick-start.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -64,5 +64,7 @@ allagents update --scope user
## Check Status

```bash
allagents workspace status
allagents status
```

Lists all configured plugins and skills with their availability status and target clients. Each entry shows a `Type` of `plugin` or `skill`. The legacy form `allagents workspace status` is still accepted.
48 changes: 47 additions & 1 deletion docs/src/content/docs/docs/reference/cli.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ description: Complete reference for AllAgents CLI commands.

```bash
allagents update [--offline] [--dry-run] [--client <client>] [--scope <scope>]
allagents status
```

### update
Expand All @@ -31,11 +32,37 @@ Sync state is tracked in `.allagents/sync-state.json`.

When `vscode` is in the `clients` list, sync also generates a `.code-workspace` file with repository paths resolved to absolute paths. See the [Workspaces guide](/docs/guides/workspaces/#vscode-workspace-generation) for details.

### status

Show the sync status of all configured plugins and skills.

```bash
allagents status
```

Lists every configured entry with its availability, type, and configured clients. Each entry includes a `Type` label of either `plugin` or `skill`:

- **plugin** — standard plugin repository (has a `skills/` directory or no `SKILL.md` at the root)
- **skill** — standalone skill repository (root-level `SKILL.md`, no `skills/` subdirectory)

With `--json`, each entry in the `plugins` array includes a `kind` field (`"plugin"` or `"skill"`):

```json
{
"plugins": [
{ "source": "owner/repo", "type": "github", "kind": "skill", "available": true }
],
"clients": ["claude"]
}
```

`allagents workspace status` is accepted as a backwards-compatible alias.

## Workspace Commands

```bash
allagents workspace init <path> [--from <source>]
allagents workspace status
allagents workspace status # alias for `allagents status`
allagents workspace plugin install <plugin@marketplace> [--scope <scope>]
allagents workspace plugin remove <plugin> [--scope <scope>]
```
Expand Down Expand Up @@ -109,6 +136,25 @@ allagents skill remove <skill> [--plugin <plugin>] [--scope <scope>]
allagents skill add <skill> [--from <source>] [--plugin <plugin>] [--scope <scope>]
```

### plugin list

List all installed plugins and skills.

```bash
allagents plugin list
allagents plugin list [marketplace] # filter by marketplace name
```

Each entry shows a `Type` label of either `plugin` or `skill` (see [`status`](#status) for the classification rule). With `--json`, each entry includes a `kind` field:

```json
{
"plugins": [
{ "spec": "owner/repo", "scope": "user", "kind": "skill", "fileClients": ["claude"] }
]
}
```

### plugin install

Install a plugin into the workspace.
Expand Down
2 changes: 2 additions & 0 deletions src/cli/commands/plugin.ts
Original file line number Diff line number Diff line change
Expand Up @@ -776,6 +776,8 @@ const pluginListCmd = command({
// Build a source→kind map so each listed entry can be labelled
// 'skill' (root SKILL.md, no skills/ subdir) or 'plugin' (everything
// else, including not-yet-resolved sources).
// getWorkspaceStatus resolves marketplace specs with { offline: true },
// so this is filesystem-only and adds ~2ms per plugin — no network I/O.
const kindBySource = new Map<string, 'skill' | 'plugin'>();
try {
const status = await getWorkspaceStatus(process.cwd());
Expand Down