# Droploft Workspace

> Workspaces: switching, listing, members, navigation tree.

- Skill: `langgenius/droploft-workspace` (Agent Skill)
- Install (CLI): `npx skillmds@latest add langgenius/droploft-workspace`
- Raw SKILL.md: https://api.skillmd.com/api/skills/langgenius/droploft-workspace/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: langgenius (https://skillmd.com/u/langgenius)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/langgenius/droploft-workspace

---


# Droploft v2 CLI — Workspace Skill

A **workspace** is the top-level tenant. Each user has one personal workspace by default and may belong to additional shared ones. Lofts and drops live inside a workspace.

## Layer 1 flows

```bash
droploft workspace +list                          # workspaces you belong to (with role)
droploft workspace +switch                        # interactive (TTY)
droploft workspace +switch --workspace <id>       # non-TTY
```

`workspace +switch` clears `profile.loft_id` — you must follow up with `loft +switch` (or pass `--loft` on each call). The hint is included in the response.

## Layer 2 resource verbs

```bash
droploft workspaces list
droploft workspaces navigation                    # GET /v1/me/navigation — workspaces with embedded lofts
droploft workspaces members <workspace-id>
droploft workspaces create --data '{"name":"Acme"}'
droploft workspaces update <workspace-id> --data '{"name":"Acme Inc"}'
```

## Roles

`navigation` and `workspaces list` both return `role` per workspace:

- `owner` — full control, can transfer or archive
- `admin` — manage members + shared lofts
- `member` — write within lofts they're added to
- `guest` — read-only from invites

## Patterns

### Pin profile to a specific workspace + loft

```bash
droploft workspace +switch --workspace <ws-id>
droploft loft +switch --loft <loft-id>
droploft config current      # confirm
```

### Inspect every loft in every workspace

```bash
droploft workspaces navigation --format json --jq '.workspaces[].lofts[]'
```

## Errors

- Switching to a workspace you no longer belong to → `not_found` (exit 4). Re-list and retry.
- `members` requires being in the workspace.

