Claude Skill

yao-workspace

Workspace file I/O expert. ALWAYS invoke this skill when you need to list workspaces, read or write files in a workspace on a remote node, or browse workspace directories. Use this for cross-node file operations — for local sandbox files, use standard filesystem tools instead.

LLM Mart · 0 points · 6 views 0 listing impressions 0 install-command copies
Virus-scanned Reviewed automatically before listing.

Full trust report

Download yaoapp-yao-tools_skills_yao-workspace-a65d251.zip · 1 KB
Part of yaoapp/yao — 12 skills

Install

skills CLI npx skills add https://github.com/YaoApp/yao/tree/main/tools/skills/yao-workspace
Claude Code claude plugin marketplace add https://llmmart.ai/marketplace.json && claude plugin install yaoapp-yao@llmmart
Git git clone https://github.com/YaoApp/yao.git

The skills CLI installs just this skill, for any of its supported agents. Claude Code installs the whole yaoapp/yao collection as a plugin from our marketplace. Git is the plain clone.

Skill manifest

Workspace Tools

Five tools for managing workspaces and file I/O, called via bash.

workspace_list

List workspaces with summary info. Use workspace_get for full details.

tai tool workspace_list '{}'
tai tool workspace_list '{"node": "tai-node-1"}'
Parameter Type Required Description
node string no Filter by Tai node ID

workspace_get

Get full workspace details: name, owner, node, labels, timestamps.

tai tool workspace_get '{"id": "ws-abc123"}'
Parameter Type Required Description
id string yes Workspace ID

workspace_file_list

List files and directories in a workspace path.

tai tool workspace_file_list '{"id": "ws-abc123"}'
tai tool workspace_file_list '{"id": "ws-abc123", "path": "src/components"}'
Parameter Type Required Description
id string yes Workspace ID
path string no Directory path (default ".")

workspace_file_read

Read file content from workspace. Returns text (UTF-8) or base64 encoded.

tai tool workspace_file_read '{"id": "ws-abc123", "path": "README.md"}'
tai tool workspace_file_read '{"id": "ws-abc123", "path": "image.png", "encoding": "base64"}'
Parameter Type Required Description
id string yes Workspace ID
path string yes File path relative to workspace root
encoding string no "text" (default) or "base64"

workspace_file_write

Write content to a file in workspace. For binary files, use base64 encoding.

tai tool workspace_file_write '{"id": "ws-abc123", "path": "output.txt", "content": "Hello World"}'
tai tool workspace_file_write '{"id": "ws-abc123", "path": "data.bin", "content": "base64data...", "encoding": "base64"}'
Parameter Type Required Description
id string yes Workspace ID
path string yes File path relative to workspace root
content string yes File content (text or base64 encoded)
encoding string no "text" (default) or "base64"

Typical Workflow

  1. workspace_list — discover available workspaces
  2. workspace_get — get full details (node, labels)
  3. workspace_file_list — browse directory structure
  4. workspace_file_read — read specific files
  5. workspace_file_write — write output files

Guidelines

  • Use workspace_list for discovery, workspace_get for details (list returns summaries only)
  • For large files (>1MB), prefer local filesystem operations if the workspace is mounted in the sandbox
  • Use encoding: "base64" for binary files (images, archives, etc.)
  • File paths are relative to the workspace root — do not use absolute paths
  • The current sandbox workspace ID is available via $CTX_WORKSPACE_ID
  • All output is JSON
Files (yao)
  • SKILL.md 3.7 KB
    ---
    name: yao-workspace
    description: Workspace file I/O expert. ALWAYS invoke this skill when you need to list workspaces, read or write files in a workspace on a remote node, or browse workspace directories. Use this for cross-node file operations — for local sandbox files, use standard filesystem tools instead.
    ---
    
    # Workspace Tools
    
    Five tools for managing workspaces and file I/O, called via bash.
    
    ## workspace_list
    
    List workspaces with summary info. Use `workspace_get` for full details.
    
    ```bash
    tai tool workspace_list '{}'
    tai tool workspace_list '{"node": "tai-node-1"}'
    ```
    
    | Parameter | Type   | Required | Description              |
    |-----------|--------|----------|--------------------------|
    | `node`    | string | no       | Filter by Tai node ID    |
    
    ## workspace_get
    
    Get full workspace details: name, owner, node, labels, timestamps.
    
    ```bash
    tai tool workspace_get '{"id": "ws-abc123"}'
    ```
    
    | Parameter | Type   | Required | Description   |
    |-----------|--------|----------|---------------|
    | `id`      | string | yes      | Workspace ID  |
    
    ## workspace_file_list
    
    List files and directories in a workspace path.
    
    ```bash
    tai tool workspace_file_list '{"id": "ws-abc123"}'
    tai tool workspace_file_list '{"id": "ws-abc123", "path": "src/components"}'
    ```
    
    | Parameter | Type   | Required | Description                    |
    |-----------|--------|----------|--------------------------------|
    | `id`      | string | yes      | Workspace ID                   |
    | `path`    | string | no       | Directory path (default ".")   |
    
    ## workspace_file_read
    
    Read file content from workspace. Returns text (UTF-8) or base64 encoded.
    
    ```bash
    tai tool workspace_file_read '{"id": "ws-abc123", "path": "README.md"}'
    tai tool workspace_file_read '{"id": "ws-abc123", "path": "image.png", "encoding": "base64"}'
    ```
    
    | Parameter  | Type   | Required | Description                              |
    |------------|--------|----------|------------------------------------------|
    | `id`       | string | yes      | Workspace ID                             |
    | `path`     | string | yes      | File path relative to workspace root     |
    | `encoding` | string | no       | "text" (default) or "base64"             |
    
    ## workspace_file_write
    
    Write content to a file in workspace. For binary files, use base64 encoding.
    
    ```bash
    tai tool workspace_file_write '{"id": "ws-abc123", "path": "output.txt", "content": "Hello World"}'
    tai tool workspace_file_write '{"id": "ws-abc123", "path": "data.bin", "content": "base64data...", "encoding": "base64"}'
    ```
    
    | Parameter  | Type   | Required | Description                              |
    |------------|--------|----------|------------------------------------------|
    | `id`       | string | yes      | Workspace ID                             |
    | `path`     | string | yes      | File path relative to workspace root     |
    | `content`  | string | yes      | File content (text or base64 encoded)    |
    | `encoding` | string | no       | "text" (default) or "base64"             |
    
    ## Typical Workflow
    
    1. `workspace_list` — discover available workspaces
    2. `workspace_get` — get full details (node, labels)
    3. `workspace_file_list` — browse directory structure
    4. `workspace_file_read` — read specific files
    5. `workspace_file_write` — write output files
    
    ## Guidelines
    
    - Use `workspace_list` for discovery, `workspace_get` for details (list returns summaries only)
    - For large files (>1MB), prefer local filesystem operations if the workspace is mounted in the sandbox
    - Use `encoding: "base64"` for binary files (images, archives, etc.)
    - File paths are relative to the workspace root — do not use absolute paths
    - The current sandbox workspace ID is available via `$CTX_WORKSPACE_ID`
    - All output is JSON
    

Comments (0)

Sign in to join the conversation.

No comments yet.

Reviews (0)

No reviews yet.

Related