@inline-chat/hermes-agent-adapter 0.0.9 → 0.0.10
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 +2 -2
- package/dist/install.js +4 -0
- package/package.json +3 -3
- package/plugin/inline/adapter.py +9 -1
- package/plugin/inline/cli.py +1 -1
- package/plugin/inline/plugin.yaml +1 -1
- package/plugin/inline/sidecar/index.mjs +8 -1
package/README.md
CHANGED
|
@@ -147,7 +147,7 @@ uv run ./hermes plugins list --plain --no-bundled
|
|
|
147
147
|
Expected local output includes:
|
|
148
148
|
|
|
149
149
|
```text
|
|
150
|
-
enabled user 0.0.
|
|
150
|
+
enabled user 0.0.10 inline-platform
|
|
151
151
|
```
|
|
152
152
|
|
|
153
153
|
## Update Or Reinstall
|
|
@@ -170,7 +170,7 @@ mismatch, rerun the same command after rebuilding or upgrading the package.
|
|
|
170
170
|
|
|
171
171
|
- Hermes Agent: requires the external user plugin registry and native platform
|
|
172
172
|
plugin loader available in Hermes Agent `0.17.x`. This package was validated
|
|
173
|
-
against Hermes Agent `0.20.
|
|
173
|
+
against Hermes Agent `0.20.6` from source commit `31e41eed`.
|
|
174
174
|
- Node.js: `>=20` is required for the bundled sidecar. Hermes-managed Node 22,
|
|
175
175
|
system Node, or an explicit `INLINE_NODE_BIN` path all work.
|
|
176
176
|
- Inline transport: the sidecar uses `@inline-chat/realtime-sdk@0.0.16` and is
|
package/dist/install.js
CHANGED
|
@@ -7009,6 +7009,10 @@ var sensitiveUrlParams = new Set([
|
|
|
7009
7009
|
"key",
|
|
7010
7010
|
"token"
|
|
7011
7011
|
]);
|
|
7012
|
+
var botSettingsEventKinds = new Set([
|
|
7013
|
+
"bot.chatSettings.request",
|
|
7014
|
+
"bot.chatSettings.item.invoke"
|
|
7015
|
+
]);
|
|
7012
7016
|
function redactText(value, secrets) {
|
|
7013
7017
|
let text = value instanceof Error ? value.message : String(value);
|
|
7014
7018
|
for (const secret of secrets) {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@inline-chat/hermes-agent-adapter",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.10",
|
|
4
4
|
"description": "Hermes Agent platform adapter for Inline, with a native Python plugin and bundled Inline realtime sidecar.",
|
|
5
5
|
"license": "Apache-2.0",
|
|
6
6
|
"type": "module",
|
|
@@ -81,7 +81,7 @@
|
|
|
81
81
|
},
|
|
82
82
|
"machineSetupProtocol": 1,
|
|
83
83
|
"minHermesVersion": "0.17.0",
|
|
84
|
-
"testedHermesVersion": "0.20.
|
|
85
|
-
"testedHermesCommit": "
|
|
84
|
+
"testedHermesVersion": "0.20.6",
|
|
85
|
+
"testedHermesCommit": "31e41eed"
|
|
86
86
|
}
|
|
87
87
|
}
|
package/plugin/inline/adapter.py
CHANGED
|
@@ -66,6 +66,7 @@ _DEDUP_MAX_SIZE = 5000
|
|
|
66
66
|
_DEDUP_WINDOW_SECONDS = 48 * 3600
|
|
67
67
|
_CHAT_INFO_CACHE_SECONDS = 10 * 60
|
|
68
68
|
_CHAT_INFO_CACHE_MAX_SIZE = 512
|
|
69
|
+
_BOT_SETTINGS_CHAT_INFO_TIMEOUT_SECONDS = 2.0
|
|
69
70
|
_BOT_SETTINGS_MODEL_CATALOG_CACHE_SECONDS = 60
|
|
70
71
|
_DEFAULT_CONTEXT_BACKFILL = "selective"
|
|
71
72
|
_CONTEXT_BACKFILL_MODES = {"off", "selective", "always"}
|
|
@@ -1013,7 +1014,14 @@ class InlineAdapter(BasePlatformAdapter):
|
|
|
1013
1014
|
if not chat_id or not actor_id:
|
|
1014
1015
|
return {"access": "guideOnly", "scope_id": chat_id or "unknown", "reply_threads": "auto"}
|
|
1015
1016
|
|
|
1016
|
-
|
|
1017
|
+
try:
|
|
1018
|
+
info = await asyncio.wait_for(
|
|
1019
|
+
self._get_chat_info(chat_id),
|
|
1020
|
+
timeout=_BOT_SETTINGS_CHAT_INFO_TIMEOUT_SECONDS,
|
|
1021
|
+
)
|
|
1022
|
+
except asyncio.TimeoutError:
|
|
1023
|
+
logger.warning("[inline] agent settings chat metadata timed out")
|
|
1024
|
+
info = {}
|
|
1017
1025
|
if not info:
|
|
1018
1026
|
return {
|
|
1019
1027
|
"access": "guideOnly",
|
package/plugin/inline/cli.py
CHANGED
|
@@ -26,7 +26,7 @@ _CLI_INSTALL_URL = "https://inline.chat/cli/install.sh"
|
|
|
26
26
|
_MAX_TOKEN_BYTES = 16 * 1024
|
|
27
27
|
_MAX_PROBE_RESPONSE_BYTES = 64 * 1024
|
|
28
28
|
_MACHINE_SETUP_PROTOCOL_VERSION = 1
|
|
29
|
-
_PROBE_USER_AGENT = "inline-hermes-agent-adapter/0.0.
|
|
29
|
+
_PROBE_USER_AGENT = "inline-hermes-agent-adapter/0.0.10"
|
|
30
30
|
_ENV_REFERENCE_RE = re.compile(r"^\$\{([A-Za-z_][A-Za-z0-9_]*)\}$")
|
|
31
31
|
|
|
32
32
|
|
|
@@ -45258,6 +45258,13 @@ var sensitiveUrlParams = new Set([
|
|
|
45258
45258
|
"key",
|
|
45259
45259
|
"token"
|
|
45260
45260
|
]);
|
|
45261
|
+
var botSettingsEventKinds = new Set([
|
|
45262
|
+
"bot.chatSettings.request",
|
|
45263
|
+
"bot.chatSettings.item.invoke"
|
|
45264
|
+
]);
|
|
45265
|
+
function inboundEventNeedsSenderResolution(event) {
|
|
45266
|
+
return !botSettingsEventKinds.has(event.kind ?? "");
|
|
45267
|
+
}
|
|
45261
45268
|
|
|
45262
45269
|
class SidecarError extends Error {
|
|
45263
45270
|
errorKind;
|
|
@@ -45828,7 +45835,7 @@ async function connectClientLoop() {
|
|
|
45828
45835
|
async function consumeEvents() {
|
|
45829
45836
|
try {
|
|
45830
45837
|
for await (const event of client.events()) {
|
|
45831
|
-
const senderResolution = await resolveInboundSender(event);
|
|
45838
|
+
const senderResolution = inboundEventNeedsSenderResolution(event) ? await resolveInboundSender(event) : { provenanceVerified: true };
|
|
45832
45839
|
const normalized = normalizeInboundEvent(event, meId, senderResolution.profile, meUsername);
|
|
45833
45840
|
await deliver(senderResolution.provenanceVerified ? normalized : { ...asRecord(normalized), _inlineSenderProvenanceVerified: false });
|
|
45834
45841
|
}
|