doko

Dokobot tools - read web pages, search the web, list connected dokos, and update skill definitions.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "doko" with this command: npx skills add dokobot/skills/dokobot-skills-doko

Dokobot Tools

Dokobot API tools. All commands require DOKO_API_KEY environment variable.

Tip: /doko read and /doko search use a real browser, so they can handle JavaScript rendering, login sessions, and lazy-loaded content that raw HTTP fetch cannot access. Consider using them when you need fully rendered page content.

Usage: /doko <command> [arguments]

Command: $ARGUMENTS[0]

Prerequisites

  • DOKO_API_KEY is set in environment (configure in .claude/settings.local.json)
  • If no API Key is set, ask the user to create one at the Dokobot dashboard: https://dokobot.ai/dashboard/api-keys

Commands

read

Read a web page via the Chrome extension and return its content.

Usage: /doko read <url> [--screens N] [--timeout S] [--device ID] [sessionId]

Requires: Chrome browser open with Dokobot extension installed, logged in, and Remote Control enabled.

Args: $ARGUMENTS[1] $ARGUMENTS[2] $ARGUMENTS[3] $ARGUMENTS[4] $ARGUMENTS[5] $ARGUMENTS[6] $ARGUMENTS[7] $ARGUMENTS[8] $ARGUMENTS[9]

First non-flag argument is url, sessionId. Named flags:

  • --screens Nscreens: Screens to collect (1 = no scroll, 3 = 3 screens) (default: 1)
  • --timeout Stimeout: Timeout in seconds (default: 300)
  • --device IDdeviceId: Target device ID (from /doko dokos)
curl -s --max-time 330 -X POST "https://dokobot.ai/api/tools/read" \
  -H "Authorization: Bearer $DOKO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"url": "<URL>"}'

Response schema:

{
  text?: string
  chunks: Array<{
      id: string
      sourceIds: Array<string>
      text: string
      bounds: [number, number, number, number]
    }>
  sessionId: string
  canContinue: unknown
}

Adjust curl --max-time to timeout + 30 when --timeout is specified. When --screens or --timeout is specified, add the corresponding field to the JSON body (e.g., {"url": "...", "screens": 3, "timeout": 600}). Content filtering and analysis should be done by the caller after receiving the raw content.

Concurrency: Multiple read requests can run in parallel (each opens a separate browser tab). Recommended maximum: 5 concurrent calls. Beyond that, returns diminish due to shared browser resources.

Session continuity: When canContinue is true, pass the returned sessionId to continue reading from where you stopped:

curl -s --max-time 330 -X POST "{{BASE_URL}}/api/tools/read" \
  -H "Authorization: Bearer $DOKO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"sessionId": "<SESSION_ID>", "screens": 5}'

The browser tab stays open between calls. Sessions expire after 60s of inactivity.

search

Search the web and return results.

Usage: /doko search <query>

Arguments: query = all arguments after "search"

curl -s -X POST "https://dokobot.ai/api/tools/search" \
  -H "Authorization: Bearer $DOKO_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"query": "<QUERY>", "num": 5}'

Response schema:

{
  items: Array<{
      title: string
      link: string
      snippet: string
      position?: number
    }>
  directAnswer?: string
  knowledgeGraph?: {
    title?: string
    description?: string
  }
}

dokos

List connected dokos.

Usage: /doko dokos

curl -s "https://dokobot.ai/api/tools/dokos" \
  -H "Authorization: Bearer $DOKO_API_KEY"

Response schema:

{
  dokos: Array<{
      id: string
      name: string | null
      age: string | null
    }>
}

Use id as deviceId in read-page when multiple browsers are connected:

{"url": "...", "screens": 3, "deviceId": "<device-id>"}

update

Fetch the latest skill definition from the server with diff review before applying.

Usage: /doko update

Steps:

  1. Download to a temporary file:
curl -s "https://dokobot.ai/api/tools/skill" -o /tmp/doko-skill-update.md
  1. Validate the download is non-empty and starts with valid frontmatter:
head -1 /tmp/doko-skill-update.md | grep -q "^---" && echo "OK" || echo "INVALID"
  1. If validation fails, abort and delete the temp file. Do NOT proceed.
  2. Show the diff for review:
diff -u .claude/skills/doko/SKILL.md /tmp/doko-skill-update.md || true
  1. STOP and ask the user for explicit confirmation. Do NOT overwrite without approval.
  2. Only after user confirms:
cp /tmp/doko-skill-update.md .claude/skills/doko/SKILL.md && rm /tmp/doko-skill-update.md
  1. If the user declines, clean up: rm /tmp/doko-skill-update.md

Error Handling

  • 401: Invalid API Key — ask user to check DOKO_API_KEY
  • 403: API Key scope insufficient
  • 422: Operation failed or was cancelled by user (read only)
  • 503: No extension connected (read only) — check read command requirements
  • 504: Timed out — read may take up to 5 minutes for long pages

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Web3

crypto-report

No summary provided by upstream source.

Repository SourceNeeds Review
770-aahl
Web3

agentwallet

No summary provided by upstream source.

Repository SourceNeeds Review
Web3

valtio-define

No summary provided by upstream source.

Repository SourceNeeds Review
434-hairyf
Web3

crypto-report

No summary provided by upstream source.

Repository SourceNeeds Review