Community研究與資料分析github.com

Resetnak/domain-availability-skill

代理技能:透過免費的 domainee.dev API 檢查各種頂級網域的域名可用性,無需 API 金鑰。

domain-availability-skill 是什麼?

這個技能讓 AI 代理能夠檢查域名可用性、npm 套件名稱以及 GitHub 使用者/組織名稱,幫助使用者為專案命名。它使用無需金鑰的免費 API:domainee.dev 的域名檢查 API(查詢多個 TLD)、npm 註冊表(確定套件名稱是否已被佔用)以及 GitHub API(檢查使用者名稱/組織名稱)。該技能專注於現實世界中常見的專案命名決策——通常需要同時檢查域名、npm 和 GitHub。它支援一次查詢最多 10 個 TLD(預設為 .com、.io、.dev、.app、.co、.net、.org、.me、.ai、.xyz),並正確處理速率限制(每 IP 每分鐘 30 次、每天 500 次)、個別 TLD 查詢逾時(回傳 available: null)以及來自 domainee.dev 的錯誤回應。代理會自動從使用者輸入中移除 TLD 後綴,並在必要時建議額外的 TLD。此技能相容於 Claude Code、Cursor 和 Codex 等 AI 代理平台,並遵循明確的工作流程,只在使用者尋求名稱協助時才納入 npm/GitHub 檢查,而非針對單純的域名查詢。所有 API 都是公開的且無需驗證。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add Resetnak/domain-availability-skill

Installed? Explore more 研究與資料分析 skills: affaan-m/uspto-database, affaan-m/scholar-evaluation, affaan-m/literature-review · View all 6 →

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

檢查域名可用性

概述

檢查一個 name 在三個通常影響專案命名決策的層面上是否可用:域名 TLD、npm 套件名稱和 GitHub 使用者名稱/組織名稱。每項檢查都是獨立的免費、無需金鑰的 API 呼叫——當使用者在命名時,可同時執行這些檢查;如果使用者只問了域名,則只需進行域名檢查。

域名 API

GET https://domainee.dev/api/v1/tools/domain-availability-checker?name=<name>&tlds=<tld>&tlds=<tld>...
  • name(必填)— 不含 TLD 的域名,例如 mybrand。
  • tlds(選填,可重複)— 例如 ?tlds=com&tlds=io。省略時 → 預設為 com, io, dev, app, co, net, org, me, ai, xyz。
  • 無需驗證。務必使用主機 domainee.dev/api/...,而非 api.domainee.dev——文檔頁面提到那個主機,但它會回傳 401(「缺少 Bearer token」);可正常運作且支援 CORS 的端點是同源下的 domainee.dev/api。

速率限制:每個 IP 每分鐘 30 次請求,每天 500 次請求。剩餘配額在 x-ratelimit-remaining-minute / x-ratelimit-remaining-day 回應標頭中。429 狀態碼會包含 Retry-After——應向使用者顯示該資訊,而非默默重試。

成功:

{"ok":true,"data":{"name":"google","results":[
  {"tld":"com","fqdn":"google.com","available":false,"registrarHint":null},
  {"tld":"io","fqdn":"google.io","available":true,"registrarHint":null}
]}}

錯誤(例如缺少 name):

{"ok":false,"error":{"code":"missing_param","message":"Query parameter `name` is required (e.g. ?name=mybrand)"}}

無法識別的 TLD 不是錯誤——它只會回傳空的 results 陣列。

個別 TLD 的註冊局查詢也可能逾時。該 TLD 的條目會顯示 "available":null,並在 registrarHint 中說明原因(例如 "操作因逾時而中止"),而 ok 仍為 true,且回應中的其他 TLD 不受影響。將 null 視為未知,而非可用或已被註冊——應將其顯示為單獨的「無法檢查」行,而不是進行猜測。如果回應中的所有 TLD 同時都回傳 null,則表示整個請求出現暫時性問題,而非 10 次巧合的逾時——在向使用者報告全部未知的結果之前,應重新呼叫一次。

npm 套件名稱 API

GET https://registry.npmjs.org/<name>

無需驗證,實際上無需擔心速率限制標頭。200 = 名稱已被佔用(存在真實套件),404 = 可用。對於範圍名稱(@scope/name),請對斜線進行 URL 編碼:https://registry.npmjs.org/@scope%2Fname。

GitHub 使用者名稱/組織 API

GET https://api.github.com/users/<name>

無需驗證。200 = 已被佔用,404 = 可用。未經驗證的請求限制為每 IP 每小時 60 次(x-ratelimit-remaining 標頭)——對於少量檢查來說足夠,但請勿對大量候選名稱進行迴圈呼叫。

工作流程

  1. 移除使用者可能已輸入的任何 TLD,以取得純粹的 name。
  2. 如果使用者只是詢問某個域名,則僅呼叫域名 API。如果使用者正在為專案/新創公司/套件/工具命名,則針對該 name 同時執行三項檢查(域名、npm、GitHub)——這個組合才是此技能的重點,而非孤立的域名查詢。
  3. 呼叫域名 API。如果使用者未指定特定的 TLD,則省略 tlds 以使用預設的 10 個後綴集合。
  4. 顯示一個合併的摘要:一個 TLD 表格(可用 ✅ / 已被佔用 ❌ / 未知-逾時 ⚠️,來自 registrarHint),加上 npm 和 GitHub 各一行(✅/❌)。
  5. 詢問一次是否要檢查更多 TLD(建議幾個尚未涵蓋的,例如 .ai、.so、一個 ccTLD)——除非使用者再次提起,否則不要對同一個名稱重複詢問。
  6. 如果他們指定更多 TLD,則僅使用那些 tlds 重新呼叫域名 API,並顯示新的結果。

社交帳號(X、Instagram 等)刻意不包含——這些平台都沒有提供免費、未經驗證的可用性檢查;抓取個人資料頁面不可靠且違反大多數的使用條款。如果被問及,應直接說明,而非透過抓取來猜測。

範例

curl -s "https://domainee.dev/api/v1/tools/domain-availability-checker?name=mybrand&tlds=com&tlds=io&tlds=ai"
curl -s -o /dev/null -w "%{http_code}" "https://registry.npmjs.org/mybrand"
curl -s -o /dev/null -w "%{http_code}" "https://api.github.com/users/mybrand"

常見錯誤

  • 使用 api.domainee.dev——錯誤的主機,會回傳 401。請使用 domainee.dev/api/...。
  • 將空的 results 陣列視為失敗——這表示 TLD 未被識別,而非錯誤。
  • 在收到 429 後立即重試——請遵守 Retry-After 並告知使用者,不要進行迴圈。
  • 針對單純的「這個域名可用嗎?」問題檢查 npm/GitHub——只有當使用者實際在命名時才納入這些檢查,而非針對每個域名查詢。
  • 聲稱能夠檢查社交帳號——沒有可靠的免費 API 可用;應說明這不在範圍內。

相關技能