Usercase

io.usercase由 usercase.io 發布v0.2.15更新於 Nov 14, 2026

Ask real users on your site and run virtual users in a real browser, then fix what they hit.

概覽

AI 產生的概覽

在真實瀏覽器裡以虛擬使用者和真實訪客對你的網站做研究,並協助修正他們遇到的問題。

可以做什麼
  • 檢查與接入網站:確認 Usercase SDK 是否運作、取得安裝程式碼、連接專案、安裝訪客子代理。
  • 建立並執行虛擬使用者:儲存與列出人物,以某個人物身分開始造訪、在畫面上操作、回答問卷卡片、查看造訪結果。
  • 錄製並驗證任務路徑:開始錄製、點擊、輸入、捲動、泛化頁面模式、回放驗證並儲存路徑。
  • 建立問題與研究:讀取近期造訪脈絡,驗證並儲存問題條件,把步驟送到儀表板,儲存研究草稿。
  • 讀取並修正發現與問題:列出與閱讀附證據的報告,把發現或問題標記為修正中或已修正,並附上檔案與 PR 連結。
適用情境
當你想用模擬訪客或真實使用者研究來測試網頁應用程式、取得回饋,錄製任務的預期路徑,或在寫程式的助理中處理 Usercase 儀表板裡的可用性發現與問題時使用。
執行需求
以本機 stdio 程序執行(npm 套件),僅支援桌面端。需要 Usercase 帳號與專案;USERCASE_API_KEY 為選用,首次使用可透過瀏覽器登入連接。登入與路徑錄製會開啟可見瀏覽器,setup 工具會為 Claude Code 或 Codex 安裝使用者層級的代理定義。
安裝前請注意
訪客的寫入動作(註冊、發文、留言、儲存、按讚)預設會被攔截;用 set_writes 設為 send 會真的送到網站,只應在測試或預備環境並經使用者確認後使用。登入 Cookie 存在 .usercase/sessions/,人物資料存在 .usercase/people.json。除非把 USERCASE_DIAGNOSTICS 設為 off,工具失敗診斷資訊會傳送給 Usercase 團隊。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Usercase,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

工具

34

check_site

Open the site once as a virtual user and report: does it load, is the Usercase SDK running (which project), is a firewall/bot protection blocking us (and how to unblock, per vendor), is the secret key set. Always run this before starting visits. If it reports a block, stop and tell the user. If you have not read the research procedure yet, call the instructions tool with command research first.

輸入參數url必填

install_snippet

Get the Usercase script for the connected project, with where to put it per framework. If nothing is connected yet, it opens the browser to connect and says what to tell the user. Use when check_site says the SDK is not running and you are in the site's repository: add the script once to the root layout/document, show the user the diff, then run check_site on the local site to confirm. Do not commit or deploy unless asked. If you have not read the install procedure yet, call the instructions tool with command install first.

無需輸入參數。

save_people

Save virtual users to .usercase/people.json (adds to what is there). People have no names — like real visitors; each gets a number (p1, p2…) to refer to them by. Make people who would really come to this site — varied goals, devices, arrival paths, and states of mind. Do not make everyone a perfect fit for one feature. Show the list to the user before running visits.

輸入參數site必填people必填researchsite_about必填

list_people

List the virtual users in .usercase/people.json and whether each has visited yet.

無需輸入參數。

results

Recent visit results (one summary per visit) and what the safety guard blocked. Call after each round of visitor sub-agents finishes — it also says whether the research run goes on to another round.

輸入參數limit

login

Open a visible browser on the user's screen so THEY can sign in to the site with one demo account. Only the resulting session (cookies) is saved, under an account name in .usercase/sessions/ — the password never passes through you or us. Call it once per demo account, one at a time. Returns immediately; tell the user to sign in and close the window, then run check_site — it checks whether the sign-in really worked. If an account is not signed in or has expired, call login again with that same account name. Members (member=true) are spread across the signed-in accounts. Never ask the user for their password.

輸入參數url必填windowaccountlifetimeHours

set_writes

Choose whether visitors' writes reach the site: signing up, posting, commenting, saving, liking. 'block' (the default) sends nothing to the site; 'send' lets those through for real. Only the user can decide this — ask them, and only call this with their answer. 'send' suits a test or staging site, or data that may be messed up; on a live site real users will see what visitors post. Payments, deleting, wallet connections and sign-out stay blocked either way. Saved in .usercase/settings.json.

輸入參數mode必填

connect

Connect Usercase to a project in the browser, or switch to another project. Opens the Usercase dashboard where the user signs in and picks the project. Other tools connect by themselves when nothing is connected — use this only when the user wants another project, or check_site says the SDK sends to a different project.

無需輸入參數。

setup

Install the visitor sub-agent definition (Claude Code: ~/.claude/agents/, Codex: ~/.codex/agents/ — user-wide, nothing is added to the repository) so visitors can be started. Run once if that agent type is not available. The user may need to restart Claude Code afterwards.

無需輸入參數。

question_context

Screens and element words from this project's recent real visits. Call first in the question procedure, before writing a condition — page globs and click targets must match what visitors actually saw. If you have not read the question procedure yet, call the instructions tool with command question first.

無需輸入參數。

question_check

Run a condition over this project's recent visits: how many it matches, grammar problems, overlap with existing questions, and what matched visitors did. Repeat until there are no problems.

輸入參數condition必填

question_save

Save the question as a DRAFT in the dashboard Inbox, after the user approved it. The server checks the condition again and refuses it if there are problems. Nobody sees it until someone turns it on.

輸入參數whytitlechoicesquestion必填condition必填triggerEnallowOtheranswerTypeacceptWarnings

steps_brief

What is in the user's Several steps window: whether the card is a question or a research invite, the page under Where, and the words they wrote. Call first in the steps procedure. If you have not read the steps procedure yet, call the instructions tool with command steps first.

輸入參數session必填

steps_send

Send the condition back to the user's Several steps window (a question or a research invite), after question_check shows no problems. The server checks it again and refuses it if there are problems. The user saves it there.

輸入參數session必填condition必填triggerEn必填acceptWarnings

report_findings

List the findings of a Usercase research's latest report (key, severity, title, who, and whether one is being fixed). Use when the fix command has no finding key. If you have not read the fix procedure yet, call the instructions tool with command fix first.

輸入參數audienceresearch必填

report_finding

Read one finding of a Usercase research report with all its evidence: why, who, the screen checks from the recordings, the paths people took, what they wrote, and the suggested changes. Read it before looking for the code. If you have not read the fix procedure yet, call the instructions tool with command fix first.

輸入參數finding必填audienceresearch必填

report_fix

Record on the research report that you are fixing a finding (status fixing, once the user approved the change) or have fixed it (status fixed, with the files, a one-sentence summary for the team, and the pull request link if any). If the last fix of this finding is already live on the site, this starts the next fix (fix 2, 3 …); otherwise it adds to the current one. The report compares people after each fix goes live with the version right before it.

輸入參數filesprUrlstatus必填finding必填summaryaudienceresearch必填

issue_list

List the open issues of the Usercase project (problems found from visitors' answers to questions on the site): id, title, where, whether it is a clear fix, and whether one is being fixed. Use when the fix command has no issue id. If you have not read the fix procedure yet, call the instructions tool with command fix first.

無需輸入參數。

issue_read

Read one issue of the Usercase project with all its evidence: the question and page, what people chose, what they wrote, the AI's reading, other issues with the same cause, and earlier fixes. Read it before looking for the code. If you have not read the fix procedure yet, call the instructions tool with command fix first.

輸入參數issue必填

issue_fix

Record on a Usercase issue that you are fixing it (status fixing, once the user approved the change) or have fixed it (status fixed, with the files, a one-sentence summary for the team, and the pull request link if any). After a finished fix, starting again records the next fix.

輸入參數filesissue必填prUrlstatus必填summary

path_tasks

List the tasks of a Usercase research (from the dashboard) and whether each already has an expected path. Call first in the path procedure. If you have not read the path procedure yet, call the instructions tool with command path first.

輸入參數research必填

path_start

Open a fresh browser on the page where the task's intended route begins and start recording its expected path. The page itself is step 1. Starting again discards the recording in progress.

輸入參數url必填task必填deviceaccount

path_click

Click a numbered element from the latest screen. By default it becomes a step of the path (the element is recorded; a new page reached is recorded too). record=false for clicks that are not part of the route (closing a cookie banner) — they are still repeated by path_check. press=false records the element as the final click without pressing it (a Pay or Submit button the safety guard will not press).

輸入參數index必填pressrecord

path_type

Type into a numbered field (a search box, a quantity). Not a path step, but repeated by path_check.

輸入參數text必填index必填

path_scroll

Scroll the recording page to see more.

輸入參數direction

path_pattern

Make a page step match any page of its kind: /notice/6553c3ba → /notice/:id. Use when participants would open a different item than the one you did (the route reads from the code). Applies to every step on that page.

輸入參數url必填step必填

path_check

Walk the recorded path again in a fresh browser: every clicked element must still be found at its recorded position with the same text, and every page must be reached. Lists the screenshots to show the user. Required before path_save.

無需輸入參數。

path_save

Upload the checked path to the dashboard, replacing the task's expected path. Only after the user approved it. success: keep (default) leaves the task's success condition; page = done on reaching the last page of the path; click = done on the last recorded click. With page or click the saved path ends at that point (later steps are left out: the task ends there, so nobody could reach them). Ask the user before changing it.

輸入參數success

research_context

What this project's data says is worth researching: open findings, where real visitors and virtual users left, what virtual users said when they left without getting what they came for, and the researches and drafts that already exist. Call first in the new-research procedure. If you have not read the new-research procedure yet, call the instructions tool with command new-research first.

無需輸入參數。

research_save

Save the research as a DRAFT in the dashboard Inbox, after the user approved it. It becomes a research only when someone creates it there. Paths are page paths starting with / (no host), with :name for the parts that change. Expected paths recorded and saved beforehand as plan-<n> (n = the task's position in tasks, from 1) are uploaded with it.

輸入參數basis必填taskstitle必填inviteminutespurpose必填questionsfindingIdshypothesesstart_screen

open_visit

Start a visit as one virtual user from people.json. Returns a visit_id and what you see first. You ARE this person from now on. If it says the site is blocking us, stop and report that.

輸入參數person必填

act

Do one thing on the screen, as the person. Numbers refer to the latest screen you were shown — only what is in view; scroll to see more. It happens after the pause a real person would take on that screen, then you get the new screen — or a survey card, or the end of the visit.

輸入參數towhy必填donetextindex必填timesaction必填visit_id必填

answer_card

Respond to the survey card on screen, as the person. Decide `bothered` FIRST — most people close these without reading. Only if bothered, pick an option, write your own words, or still close.

輸入參數why必填action必填bothered必填visit_id必填other_textbothered_why必填choice_index必填

instructions

Start here for any Usercase work — whether the user typed a command or just asked in their own words. Returns the step-by-step procedure; follow it as the user's request, and call this before the other Usercase tools. Commands: research (test or get feedback on the site with virtual users; `research` id to have them take part in a research), new-research (plan or create a research / usability study), install (add or install the Usercase script on the site), question (make a question to ask visitors at a moment on the site), steps (write the steps for the question open in the dashboard; `session` = its window id), path (record the expected paths of a research's tasks; `research` id, optional `task`), fix (fix a finding from a research report: `research` id + `finding` key like F1, `audience` real for the real-people report; or an issue from Issues: `issue` id), connect (connect this repository to another Usercase project).

輸入參數urltaskcountfocusissuecommand必填findingsessionaudienceresearch

版本歷史

1
  1. v0.2.15最新Nov 14, 2026

評分

已滿足適用檢查項的 65%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分
  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分

    請宣告包含 README 的 GitHub 儲存庫,或在 OAuth 受保護資源後設資料中提供 resource_documentation。

  • 授權條款10 分

    請在儲存庫或註冊中心條目中宣告授權條款。