Here.Now
將靜態站點發布到 {slug}.here.now,並將私有文件存儲在雲盤(Drives)中,以便智能體之間進行交接。
技能元數據
| 來源 | 可選 — 使用 hermes skills install official/productivity/here-now 安裝 |
| 路徑 | optional-skills/productivity/here-now |
| 版本 | 1.15.3 |
| 作者 | here.now |
| 許可證 | MIT |
| 平臺 | macos, linux |
| 標籤 | here.now, herenow, publish, deploy, hosting, static-site, web, share, URL, drive, storage |
參考:完整 SKILL.md
以下是 Hermes 在觸發此技能時加載的完整技能定義。這是技能激活時智能體看到的指令。
here.now
here.now 允許智能體發佈網站並將私有文件存儲在雲盤(Drives)中。
使用 here.now 執行兩項任務:
- 站點(Sites):在
{slug}.here.now發佈網站和文件。 - 雲盤(Drives):將私有智能體文件存儲在雲文件夾中。
當前文檔
在回答有關 here.now 功能、特性或工作流的問題之前,請閱讀當前文檔:
閱讀文檔的時機:
- 在對話中首次進行與 here.now 相關的交互時
- 當用戶詢問如何執行某項操作時
- 當用戶詢問哪些功能是可能的、受支持的或推薦的時候
- 在告知用戶某項功能不受支持之前
需要查閱當前文檔的主題(不要僅依賴本地技能文本):
- 雲盤(Drives)和雲盤共享
- 自定義域名
- 支付和支付網關
- 分叉(forking)
- 代理路由和服務變量
- 句柄(handles)和鏈接
- 限制和配額
- SPA 路由
- 錯誤處理和修復
- 功能可用性
如果文檔與實時 API 行為不一致,請以實時 API 行為為準。
如果文檔獲取失敗或超時,請繼續使用本地技能和實時 API/腳本輸出。對於活躍操作,優先採用實時 API 行為。
要求
- 必需二進制文件:
curl,file,jq - 可選環境變量:
$HERENOW_API_KEY - 可選雲盤令牌變量:
$HERENOW_DRIVE_TOKEN - 可選憑據文件:
~/.herenow/credentials - 技能輔助腳本路徑:
${HERMES_SKILL_DIR}/scripts/publish.sh用於發佈站點${HERMES_SKILL_DIR}/scripts/drive.sh用於私有云盤存儲
創建站點
PUBLISH="${HERMES_SKILL_DIR}/scripts/publish.sh"
bash "$PUBLISH" {file-or-dir} --client hermes
輸出實時 URL(例如 https://bright-canvas-a7k2.here.now/)。
底層這是一個三步流程:創建/更新 -> 上傳文件 -> finalize(最終化)。只有 finalize 成功後,站點才會上線。
如果沒有 API 密鑰,這將創建一個匿名站點,該站點將在 24 小時後過期。 如果保存了 API 密鑰,站點將是永久性的。
文件結構: 對於 HTML 站點,請將 index.html 放在要發佈的目錄根目錄下,而不是子目錄中。目錄的內容將成為站點根目錄。例如,發佈 my-site/,其中存在 my-site/index.html — 不要發佈包含 my-site/ 的父文件夾。
你也可以發佈沒有任何 HTML 的原始文件。單個文件會獲得豐富的自動查看器(圖片、PDF、視頻、音頻)。多個文件會獲得自動生成的目錄列表,包含文件夾導航和圖片畫廊。
更新現有站點
PUBLISH="${HERMES_SKILL_DIR}/scripts/publish.sh"
bash "$PUBLISH" {file-or-dir} --slug {slug} --client hermes
更新匿名站點時,腳本會自動從 .herenow/state.json 加載 claimToken。傳遞 --claim-token {token} 以覆蓋。
經過身份驗證的更新需要保存的 API 密鑰。
使用雲盤(Drive)
當用戶希望為智能體文件提供私有云存儲時使用雲盤:文檔、上下文、記憶、計劃、資產、媒體、研究、代碼以及任何其他應持久保存但不作為網站發佈的內容。
每個登錄賬戶都有一個名為 My Drive 的默認雲盤。
DRIVE="${HERMES_SKILL_DIR}/scripts/drive.sh"
bash "$DRIVE" default
bash "$DRIVE" ls "My Drive"
bash "$DRIVE" put "My Drive" notes/today.md --from ./notes/today.md
bash "$DRIVE" cat "My Drive" notes/today.md
bash "$DRIVE" share "My Drive" --perms write --prefix notes/ --ttl 7d
使用 scoped 雲盤令牌進行智能體之間的交接。如果你收到一個 herenow_drive 共享塊,請使用其 token 作為針對 api_base 的 Authorization: Bearer <token>,在存在 pathPrefix 時尊重它,並在寫入時保留 ETags。pathPrefix 為 null 表示完全訪問雲盤。如果該技能可用,優先使用 drive.sh;否則直接調用列出的 API 操作。
API 密鑰存儲
發佈腳本從以下來源讀取 API 密鑰(首次匹配生效):
--api-key {key}標誌(僅用於 CI/腳本 — 避免在交互式使用中使用)$HERENOW_API_KEY環境變量~/.herenow/credentials文件(推薦用於智能體)
要存儲密鑰,請將其寫入憑據文件:
mkdir -p ~/.herenow && echo "{API_KEY}" > ~/.herenow/credentials && chmod 600 ~/.herenow/credentials
重要:收到 API 密鑰後,請立即保存 — 自行運行上述命令。不要要求用戶手動運行它。避免在交互式會話中通過 CLI 標誌(例如 --api-key)傳遞密鑰;憑據文件是首選的存儲方法。
切勿將憑據或本地狀態文件(~/.herenow/credentials, .herenow/state.json)提交到源代碼控制中。
獲取 API 密鑰
要從匿名(24小時)站點升級為永久站點:
- 詢問用戶的電子郵件地址。
- 請求一次性登錄代碼:
curl -sS https://here.now/api/auth/agent/request-code \
-H "content-type: application/json" \
-d '{"email": "user@example.com"}'
- 告知用戶:“請檢查您的收件箱,查找來自 here.now 的登錄驗證碼,並將其粘貼到此處。”
- 驗證驗證碼並獲取 API 密鑰:
curl -sS https://here.now/api/auth/agent/verify-code \
-H "content-type: application/json" \
-d '{"email":"user@example.com","code":"ABCD-2345"}'
- 自行保存返回的
apiKey(不要要求用戶執行此操作):
mkdir -p ~/.herenow && echo "{API_KEY}" > ~/.herenow/credentials && chmod 600 ~/.herenow/credentials
狀態文件
每次創建或更新站點後,腳本會將數據寫入工作目錄中的 .herenow/state.json:
{
"publishes": {
"bright-canvas-a7k2": {
"siteUrl": "https://bright-canvas-a7k2.here.now/",
"claimToken": "abc123",
"claimUrl": "https://here.now/claim?slug=bright-canvas-a7k2&token=abc123",
"expiresAt": "2026-02-18T01:00:00.000Z"
}
}
}
在創建或更新站點之前,您可以檢查此文件以查找先前的 slug。
僅將 .herenow/state.json 視為內部緩存。
切勿將此本地文件路徑作為 URL 呈現,也切勿將其用作身份驗證模式、過期時間或認領 URL 的真實來源。
如何告知用戶
對於已發佈的站點:
- 始終分享當前腳本運行生成的
siteUrl。 - 閱讀並遵循腳本標準錯誤輸出(stderr)中的
publish_result.*行以確定身份驗證模式。 - 當
publish_result.auth_mode=authenticated時:告知用戶該站點是永久性的並已保存到其賬戶中。無需認領 URL。 - 當
publish_result.auth_mode=anonymous時:告知用戶該站點將在 24 小時後過期。分享認領 URL(如果publish_result.claim_url非空且以https://開頭),以便他們可以永久保留該站點。警告用戶認領令牌僅返回一次,無法恢復。 - 切勿告知用戶檢查
.herenow/state.json以獲取認領 URL 或身份驗證狀態。
對於 Drives:
- 不要將 Drive 文件描述為公共 URL。
- 告知用戶,除非通過 scoped token 共享,否則 Drive 內容是私有的。
- 在與另一個 agent 共享訪問權限時,優先使用具有狹窄
pathPrefix和短 TTL 的 scoped token。
publish.sh 選項
| 標誌 | 描述 |
|---|---|
--slug {slug} | 更新現有站點而非創建新站點 |
--claim-token {token} | 覆蓋匿名更新的認領令牌 |
--title {text} | 查看器標題(非 HTML 站點) |
--description {text} | 查看器描述 |
--ttl {seconds} | 設置過期時間(僅限已認證) |
--client {name} | 用於歸屬的 Agent 名稱(例如 hermes) |
--base-url {url} | API 基礎 URL(默認:https://here.now) |
--allow-nonherenow-base-url | 允許向非默認的 --base-url 發送身份驗證請求 |
--api-key {key} | 覆蓋 API 密鑰(優先使用憑證文件) |
--spa | 啟用 SPA 路由(為未知路徑提供 index.html) |
--forkable | 允許其他人 fork 此站點 |
超出 publish.sh 範圍
對於 Drive 操作,請使用 drive.sh 或 Drive API。對於更廣泛的賬戶和站點管理——刪除、元數據、密碼、支付、域名、句柄、鏈接、變量、代理路由、fork、複製等——請參閱當前文檔: