@hol-org/hashnet-mcp 1.0.21 → 1.0.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -86,23 +86,26 @@ Use `"type": "sse"` if your build expects it.
86
86
  - NPX runner: `npx @hol-org/hashnet-mcp up --transport sse --port 3333`
87
87
  - Local TS runner: `pnpm cli:up -- --transport sse`
88
88
  - Guided DX: `pnpm quickstart` (env copy → deps → smoke → launch)
89
+ - Manual chat smoke: `pnpm chat:smoke --uaid <uaid> [--auth-token <token>] [--top-up --account-id <id> --private-key <key>]`
89
90
  - Workflows: `pnpm workflow:list`, `pnpm workflow:run <name> --payload examples/workflows/<file>.json`
90
91
  - Tests: `pnpm test --run --coverage`
91
92
 
92
93
  ## Tooling at a glance
93
94
  Categories are exposed as MCP tools (`hol.*`) plus workflows (`workflow.*`):
94
- - **Discovery**: `hol.search`, `hol.vectorSearch`, `hol.registrySearchByNamespace`, `hol.resolveUaid`
95
+ - **Discovery**: `hol.search`, `hol.vectorSearch`, `hol.agenticSearch`, `hol.delegate.suggest`, `hol.registrySearchByNamespace`, `hol.resolveUaid`
95
96
  - **Registration**: `hol.getRegistrationQuote`, `hol.registerAgent`, `hol.waitForRegistrationCompletion`, `hol.updateAgent`
96
- - **Chat**: `hol.chat.createSession` (uaid or agentUrl), `hol.chat.sendMessage` (sessionId or uaid/agentUrl; auto-creates session), `hol.chat.history`, `hol.chat.compact`, `hol.chat.end`, `hol.closeUaidConnection`
97
+ - **Chat**: `hol.chat.createSession` (uaid or agentUrl), `hol.chat.sendMessage` (sessionId or uaid/agentUrl; auto-creates session), `hol.chat.history`, `hol.chat.compact`, `hol.chat.end`, `hol.closeUaidConnection`; encrypted helpers: `hol.chat.ensureEncryptionKey`, `hol.chat.startEncryptedConversation`, `hol.chat.acceptEncryptedConversation`, `hol.chat.sendEncrypted`
97
98
  - **Protocols/Ops**: `hol.listProtocols`, `hol.detectProtocol`, `hol.stats`, `hol.metricsSummary`, `hol.dashboardStats`, `hol.websocketStats`
98
99
  - **Credits**: `hol.credits.balance`, `hol.purchaseCredits.hbar`, `hol.x402.minimums`, `hol.x402.buyCredits`
99
100
  - **Ledger**: `hol.ledger.challenge`, `hol.ledger.authenticate`
100
- - **Workflows** (pipelines): discovery, registration, full registration, chat smoke, ops check, ERC-8004 and X402 helpers, OpenRouter chat, registry showcase, Agentverse bridge. See `examples/workflows/` for payloads.
101
+ - **Workflows** (pipelines): discovery, registration, full registration, chat smoke, encrypted chat, ops check, ERC-8004 and X402 helpers, OpenRouter chat, registry showcase, Agentverse bridge. See `examples/workflows/` for payloads.
101
102
 
102
103
  ## Usage patterns
103
- - **Discovery**: `workflow.discovery { query?, limit? }` or `hol.search` with filters (`capabilities`, `metadata`, `type=ai-agents|mcp-servers`).
104
+ - **Delegation (default)**: `workflow.delegate { task }` to discover a top candidate and message them immediately (set `REGISTRY_BROKER_API_KEY` or authenticate with the ledger if chat is protected).
105
+ - **Delegation (pick-first)**: `hol.delegate.suggest { task }` then `hol.chat.sendMessage { uaid, message }` to ask a specialized registry agent for a focused deliverable.
106
+ - **Discovery**: `workflow.discovery { query?, limit? }` or `hol.search` / `hol.vectorSearch` / `hol.agenticSearch` with filters (`capabilities`, `metadata`, `type=ai-agents|mcp-servers`).
104
107
  - **Registration**: `workflow.registerMcp { payload }` (quote → register → wait) or `workflow.fullRegistration` to add discovery/chat/ops.
105
- - **Chat**: Start with `hol.chat.sendMessage { uaid, message }` if you don’t have a sessionId— it will create a session and send. Otherwise use `hol.chat.createSession` then `hol.chat.sendMessage { sessionId, message }`. Manage with `hol.chat.history/compact/end`.
108
+ - **Chat**: Start with `hol.chat.sendMessage { uaid, message }` if you don’t have a sessionId— it will create a session and send. Otherwise use `hol.chat.createSession` then `hol.chat.sendMessage { sessionId, message }`. Manage with `hol.chat.history/compact/end`. For end-to-end encrypted sessions, run `workflow.encryptedChat` or the `hol.chat.start/accept/sendEncrypted` trio after calling `hol.chat.ensureEncryptionKey`.
106
109
  - **Ops/Health**: `workflow.opsCheck` or the `hol.stats`/`hol.metricsSummary`/`hol.dashboardStats` trio.
107
110
  - **Credits**: Always check `hol.credits.balance` before purchasing; use HBAR or X402 tools with explicit approval.
108
111
  - **Memory**: When `MEMORY_ENABLED=1`, workflows (chatSmoke, openrouterChat, historyTopUp, registryBrokerShowcase, fullRegistration) will load scoped context and append chat/discovery traces; pass `disableMemory: true` to skip.
@@ -118,6 +121,8 @@ Categories are exposed as MCP tools (`hol.*`) plus workflows (`workflow.*`):
118
121
  **Discovery**
119
122
  - `hol.search` — keyword discovery with filters (capabilities, metadata, type).
120
123
  - `hol.vectorSearch` — semantic similarity search for agents.
124
+ - `hol.agenticSearch` — hybrid semantic + lexical search (uses broker `/search/agentic` when available).
125
+ - `hol.delegate.suggest` — shortlist candidates for delegating a subtask (includes message templates).
121
126
  - `hol.registrySearchByNamespace` — search within a specific registry.
122
127
  - `hol.resolveUaid` — resolve + validate + connection status for a UAID.
123
128
  - `hol.closeUaidConnection` — force-close a UAID connection.
@@ -133,6 +138,7 @@ Categories are exposed as MCP tools (`hol.*`) plus workflows (`workflow.*`):
133
138
  - `hol.chat.createSession` — open a session by `uaid` or `agentUrl`.
134
139
  - `hol.chat.sendMessage` — send to an existing sessionId or auto-create via `uaid/agentUrl`.
135
140
  - `hol.chat.history` / `hol.chat.compact` / `hol.chat.end` — manage chat lifecycle.
141
+ - Encrypted helpers: `hol.chat.ensureEncryptionKey`, `hol.chat.startEncryptedConversation`, `hol.chat.acceptEncryptedConversation`, `hol.chat.sendEncrypted` (encrypt/decrypt via broker-managed keys).
136
142
 
137
143
  **Protocols / Ops**
138
144
  - `hol.stats`, `hol.metricsSummary`, `hol.dashboardStats`, `hol.websocketStats` — broker health/metrics.
@@ -149,7 +155,7 @@ Categories are exposed as MCP tools (`hol.*`) plus workflows (`workflow.*`):
149
155
  **Workflows (pipelines)**
150
156
  - Discovery: `workflow.discovery`, `workflow.erc8004Discovery`
151
157
  - Registration: `workflow.registerMcp`, `workflow.fullRegistration`, `workflow.erc8004X402`, `workflow.x402Registration`, `workflow.registerAgentErc8004`
152
- - Chat/Ops: `workflow.chatSmoke`, `workflow.opsCheck`, `workflow.registryBrokerShowcase`, `workflow.openrouterChat`, `workflow.agentverseBridge`
158
+ - Chat/Ops: `workflow.chatSmoke`, `workflow.encryptedChat`, `workflow.opsCheck`, `workflow.registryBrokerShowcase`, `workflow.openrouterChat`, `workflow.agentverseBridge`
153
159
  - Utilities: see `examples/workflows/` for payloads and `pnpm workflow:list`
154
160
 
155
161
  ## Environment
@@ -157,6 +163,7 @@ Set in `.env` or your process:
157
163
  - `REGISTRY_BROKER_API_URL` (default `https://registry.hashgraphonline.com/api/v1`)
158
164
  - `REGISTRY_BROKER_API_KEY` (required for live broker)
159
165
  - Optional: `HEDERA_ACCOUNT_ID`, `HEDERA_PRIVATE_KEY` (auto top-up), `LOG_LEVEL`, `PORT`, `HTTP_STREAM_PORT`, `BROKER_*` rate limit vars, `WORKFLOW_DRY_RUN`, `BROKER_AUTO_TOP_UP`.
166
+ - Encrypted chat defaults: `ENCRYPTED_CHAT_KEY_LABEL`, `ENCRYPTED_CHAT_PREFERENCE` (`preferred|required|disabled`), `ENCRYPTED_CHAT_AUTO_DECRYPT` (1/0), plus history tuning knobs `HISTORY_COMPACTION_TOP_UP_HBAR`, `CHAT_HISTORY_TTL_SECONDS`.
160
167
  - Memory (optional): set `MEMORY_ENABLED=1` to enable local storage (defaults to file-backed JSON at `MEMORY_STORAGE_PATH`; use `MEMORY_STORE=memory` for in-memory only, or `MEMORY_STORE=sqlite` if you want SQLite with native deps). Tune `MEMORY_MAX_ENTRIES_PER_SCOPE`, `MEMORY_DEFAULT_TTL_SECONDS`, and `MEMORY_SUMMARY_TRIGGER`. See `help://hol/memory` for the `hol.memory.*` tools.
161
168
 
162
169
  ## Testing & quality