Install
openclaw skills install okki-goB2B lead prospecting and outreach via the Okki Go platform. Use this skill to (1) search global companies, (2) find decision-maker contact emails, (3) send cold outreach emails/EDM, (4) check email delivery status, (5) check credits/quota balance, or (6) upgrade plans/buy credits. Do NOT trigger if the user wants to search ON a DIFFERENT platform (e.g. 'search 1688 for suppliers', 'find products on Alibaba'). Having a product listing on another platform is fine - only skip when the search action itself targets another platform. Also NOT for: reading incoming emails, CRM management, or account settings.
openclaw skills install okki-goOKKI Go helps users find B2B prospect companies, unlock selected company details, find decision-maker emails, draft or send outbound email, and check balance or email status.
Default principle: run free company discovery quickly from target-company terms, show the script-rendered company table, and wait for explicit confirmation before any paid unlock, contact search, or email send.
For ordinary OKKI Go prospecting, do not use public web search to find or replace company results. This includes requests to find companies, buyers, importers, distributors, customers, target accounts, or prospects.
OKKI API errors, zero results, noisy rows, network failure, or when the API is busy must be handled inside OKKI flow: retry once, split a batch, simplify keywords, paginate, use L2 route diagnosis, ask one clarifying question, or tell the user OKKI Go is temporarily unavailable. Public web search is not a fallback.
WEB_RESEARCH_ADDON is only for a user-explicit request for independent external/latest/source-backed research. It is not for ordinary find companies, buyers, importers, distributors, customers, target accounts, or prospects. Web Research Add-on is never an OKKI failure fallback and must not authorize paid actions or mutate OKKI payloads without confirmation.
Before the first OKKI Go API call in each session:
bash scripts/resolve-api-key.sh --check
If it returns NO_KEY, read references/authentication.md. Never print, log, or store API keys outside a user-approved secure save path.
Choose exactly one primary mode before tool use.
| Mode | Use when | Read only when | Tool pattern |
|---|---|---|---|
L0_FAST_DISCOVERY | User asks to find companies, buyers, importers, distributors, customers, target accounts, or prospects. | references/search-fast-path.md only if this file's quick command is insufficient. | One compact free company search or batch search. |
L0_PAGINATION | User says more, next, continue, or similar and current compact batch has a next page. | Usually none; use batch metadata. | Fetch next same-route page before Expansion. |
L1_RESULT_REVIEW | User asks which displayed results to unlock, contact, prioritize, avoid, or analyze. | references/result-review.md | Reuse current batch; no re-search by default. |
L2_GUIDED_STRATEGY | User asks how to search, says results are wrong/too few/suppliers, or needs route guidance. | references/search-strategy.md | Build a minimal profile, then search or propose one route. |
EXPANSION | Current route is exhausted or user asks for alternate customer routes. | references/expansion-playbook.md | Offer 2-3 branches; search one confirmed branch. |
PAID_ACTION | User asks to unlock, search contacts, or send email. | references/paid-actions.md | Ask or verify confirmation before paid tools. |
DIRECT_STATUS | Balance, pricing, auth, install, setup, or email status. | references/authentication.md only for auth/install/setup. | Use the agent-led install wizard for install/setup; direct compact/status command otherwise. |
WEB_RESEARCH_ADDON | User explicitly asks for independent external/latest/source-backed research. | Separate web guidance only after the OKKI boundary is satisfied. | Cite sources; do not mutate OKKI search payload without confirmation. |
If two modes seem plausible, use this safety-preserving order: paid-action guardrails, direct status/auth, pagination, result review, fast discovery, guided strategy, Expansion, Web Research Add-on. Never choose Web Research Add-on for ordinary prospect discovery or OKKI error recovery.
Apply this contract before every free company-search payload, including L0 search, recovery, Expansion, and L2 guided payloads.
productKeywords, companyTypeKeywords, and industryKeywords, generate concise Chinese index-language terms by default.productKeywords, companyTypeKeywords, or industryKeywords, plus geography when provided.crossFieldOperator: "AND", do not pack all three keyword fields, and do not use email-only unless requested.Supported free company-search fields are only companyTypeKeywords, productKeywords, industryKeywords, includeCountry, excludeCountry, withEmails, crossFieldOperator, from, and size. includeCountry is only a filter and cannot be sent without a keyword field. Do not invent filters such as employee range, decision roles, website, homepage, contacts, or limit.
Free L0 company search:
node scripts/search-companies.js --json '<search-advanced payload>' --compact --locale '<user-locale>' --save-raw /private/tmp/okki-go-batches/<batch>.json
Broad, paginated, "more", or count-based discovery:
node scripts/discover-companies-batch.js --json '<plan>' --target-count N --save-batch /private/tmp/okki-go-batches/<batch>.json --compact --locale '<user-locale>'
Confirmed row unlock from the most recent displayed batch:
node scripts/unlock-companies.js --batch latest --rows 1,3,5 --mark-unlocked --compact --locale '<user-locale>'
Confirmed cross-company contact search:
node scripts/search-contacts.js --json '<contacts/search payload>' --save-batch /private/tmp/okki-go-batches/<contacts>.json --compact
Email status:
node scripts/email-status.js tasks --json '{"page":1,"page_size":20}' --compact
node scripts/email-status.js mails --json '{"statuses":"failed","page":1,"page_size":20}' --compact
Balance:
OKKIGO_API_KEY="$(bash scripts/resolve-api-key.sh --print)"
curl -s -X GET "${OKKIGO_BASE_URL:-https://go.okki.ai}/api/v1/credit/balance" \
-H "Authorization: ApiKey ${OKKIGO_API_KEY}" \
-H "X-Okki-Skill-Version: ${OKKIGO_SKILL_VERSION:-1.3.0}"
Use compact wrappers and --batch latest for normal work. Do not call raw/non-compact output unless the user explicitly asks for raw, debug, export, or full detail.
Normal replies must be answer-ready and user-facing:
display_table_markdown exactly as the result table; do not reorder columns, rebuild the table from rows, or add hidden fields.next_action and discovery_health.references/output-contracts.md for script-owned private fields, debug metadata, raw/export behavior, and unlocked company detail Markdown output.next_action and discovery_health.health_action; do not re-derive pagination or low-yield routing from chat text.--batch latest for row selections from the latest displayed batch. If the batch is missing or stale, re-run a free lookup or ask the user to choose from a new list before any unlock confirmation.These rules are non-bypassable.
Unlock: before every /companies/unlock call, ask explicit credit confirmation unless the same user turn already names the selected company and explicitly accepts the unlock credit cost. Wording:
Unlocking this company costs 1 credit unless it was unlocked in the last 30 days. Proceed?
A row number, "find emails", "get contacts", Profile reuse, Expansion, Web Research, or Mentor recommendation is not confirmation. After a paid call, report charge, remaining balance when available, compact details, and warnings. Local viewed-state write failure is warning-only after a successful unlock; never repeat a paid unlock just to repair local state.
Contact search: before the first POST /contacts/search in a session, state that contact search costs 1 credit per query and wait for confirmation. Subsequent same-session contact searches do not need re-confirmation unless the user refuses or scope materially changes.
Email send: never send before explicit recipient and content confirmation. Drafting is free; sending consumes EDM quota. After sending, keep output compact and do not echo full bodies unless requested.
Read only the reference needed for the selected mode:
| Reference | Read only when |
|---|---|
references/search-fast-path.md | Building or paginating ordinary free company-search payloads beyond the quick command. |
references/result-review.md | Result prioritization, unlock advice, L1 review, or observe/not-recommended grouping over a visible batch. |
references/search-strategy.md | L2 guided strategy, low-yield diagnosis, supplier-vs-buyer correction, or search-route coaching. |
references/expansion-playbook.md | Current route is exhausted or user asks for alternate customer routes. |
references/paid-actions.md | Paid unlock, contact search, email send, balance commands, or missing batch recovery. |
references/output-contracts.md | Wrapper output schemas, field ownership, raw/debug/detail behavior, or script contract work. |
references/workflows.md | Legacy compatibility index when older docs refer to workflow names. |
references/discovery-playbook.md | Legacy compatibility index when older docs refer to discovery playbook. |
references/sales-mentor-playbook.md | Legacy compatibility index when older docs refer to sales mentor playbook. |
references/merchant-profile-playbook.md | User asks to save/reuse company info or guided strategy needs optional profile memory. |
references/authentication.md | API key missing/invalid, setup, secure save, install ID, or signup/legal flow. |
references/api-reference.md | Script development, direct API debugging, new endpoint support, or hard API errors. Not for normal usage. |
Reply in the user's language. Chinese user requests get Chinese prompts, result tables, and next-step questions.
Handle common errors quickly:
401: invalid or missing API key; read references/authentication.md.402: insufficient credits; stop the paid flow and direct to https://go.okki.ai/pricing.403: no EDM access; guide upgrade.When users ask about plans, upgrades, or credit packs, direct them to https://go.okki.ai/pricing.