Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion bun.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion plugins/hermes-agent/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ uv run ./hermes plugins list --plain --no-bundled
Expected local output includes:

```text
enabled user 0.0.20 inline-platform
enabled user 0.0.21 inline-platform
```

## Update Or Reinstall
Expand Down
2 changes: 1 addition & 1 deletion plugins/hermes-agent/RELEASE.md
Original file line number Diff line number Diff line change
Expand Up @@ -130,7 +130,7 @@ the trusted-publishing workflow through the repository wrapper:

```sh
cd ..
bun run release:npm hermes-agent --version 0.0.20 --tag latest
bun run release:npm hermes-agent --version 0.0.21 --tag latest
npm view @inline-chat/hermes-agent-adapter version
npm view @inline-chat/hermes-agent-adapter dist-tags --json
```
Expand Down
2 changes: 1 addition & 1 deletion plugins/hermes-agent/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "@inline-chat/hermes-agent-adapter",
"version": "0.0.20",
"version": "0.0.21",

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Require 0.0.21 from the managed Hermes installer

inline agents setup --target hermes will continue to keep an existing 0.0.20 plugin: MINIMUM_HERMES_PLUGIN_VERSION remains 0.0.20, and ensure_plugin returns early for any live plugin at or above that floor. Consequently, users who installed the previous release and rerun the normal setup/repair flow never invoke the npm exec ... install --force path and remain on the version without the authorization and inbound-recovery fixes this release is meant to deliver. Raise the CLI floor (and its associated assertions) to 0.0.21 so the managed path upgrades them.

Useful? React with 👍 / 👎.

"description": "Hermes Agent platform adapter for Inline, with a native Python plugin and bundled Inline realtime sidecar.",
"license": "Apache-2.0",
"type": "module",
Expand Down
2 changes: 1 addition & 1 deletion plugins/hermes-agent/plugin/inline/cli.py
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,7 @@
_MAX_TOKEN_BYTES = 16 * 1024
_MAX_PROBE_RESPONSE_BYTES = 64 * 1024
_MACHINE_SETUP_PROTOCOL_VERSION = 1
_PROBE_USER_AGENT = "inline-hermes-agent-adapter/0.0.20"
_PROBE_USER_AGENT = "inline-hermes-agent-adapter/0.0.21"
_ENV_REFERENCE_RE = re.compile(r"^\$\{([A-Za-z_][A-Za-z0-9_]*)\}$")


Expand Down
2 changes: 1 addition & 1 deletion plugins/hermes-agent/plugin/inline/plugin.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ label: Inline
kind: platform
provides_tools:
- inline
version: 0.0.20
version: 0.0.21
requires_hermes: ">=0.21.3"
description: >
Inline platform adapter for Hermes Agent. The adapter runs as a native
Expand Down
20 changes: 10 additions & 10 deletions plugins/hermes-agent/tests/adapter-python.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -420,7 +420,7 @@ version_text = _inline_version_text({
"skills": {"state": "synced", "count": 2},
})
assert "Inline Hermes plugin" in version_text
assert "Plugin version: 0.0.20" in version_text
assert "Plugin version: 0.0.21" in version_text
assert "Hermes version: 0.18.2" in version_text
assert "Installed or updated at:" in version_text
assert "commands 10 published" in version_text
Expand All @@ -435,7 +435,7 @@ with tempfile.TemporaryDirectory(prefix="inline-hermes-catalog-metadata-") as tm
legacy_dir.mkdir(parents=True)
catalog_dir.mkdir(parents=True)
(legacy_dir / "plugin.yaml").write_text("version: 0.0.1\n", encoding="utf-8")
(catalog_dir / "plugin.yaml").write_text("version: 0.0.20\n", encoding="utf-8")
(catalog_dir / "plugin.yaml").write_text("version: 0.0.21\n", encoding="utf-8")
saved_adapter_file = inline_adapter_module.__file__
saved_cli_file = inline_cli.__file__
saved_catalog_home = os.environ.get("HERMES_HOME")
Expand All @@ -444,13 +444,13 @@ with tempfile.TemporaryDirectory(prefix="inline-hermes-catalog-metadata-") as tm
inline_adapter_module.__file__ = str(catalog_dir / "adapter.py")
inline_cli.__file__ = str(catalog_dir / "cli.py")
os.environ["HERMES_HOME"] = str(catalog_home)
assert inline_adapter_module._installed_inline_plugin_version() == "0.0.20"
assert inline_cli._plugin_version() == "0.0.20"
assert inline_adapter_module._installed_inline_plugin_version() == "0.0.21"
assert inline_cli._plugin_version() == "0.0.21"
# Distinct directory timestamps ensure the test catches the legacy path.
Path.lstat = lambda self: types.SimpleNamespace(st_ctime=100 if self == catalog_dir else 200)
assert inline_adapter_module._inline_install_timestamp() == "1970-01-01T00:01:40Z"
catalog_text = _inline_version_text()
assert "Plugin version: 0.0.20" in catalog_text
assert "Plugin version: 0.0.21" in catalog_text
assert "1970-01-01T00:01:40Z" in catalog_text
assert "Plugin version: 0.0.1\n" not in catalog_text
finally:
Expand Down Expand Up @@ -1223,7 +1223,7 @@ assert json.loads(machine_output) == {
"ok": True,
"action": "inline.setup",
"setupProtocolVersion": 1,
"pluginVersion": "0.0.20",
"pluginVersion": "0.0.21",
"configured": True,
"access": "allowlist",
"ownerUserId": "42",
Expand Down Expand Up @@ -1273,7 +1273,7 @@ probe_output = probe_stdout.getvalue()
assert machine_token not in probe_output
probe_payload = json.loads(probe_output)
assert probe_payload["setupProtocolVersion"] == 1
assert probe_payload["pluginVersion"] == "0.0.20"
assert probe_payload["pluginVersion"] == "0.0.21"
assert probe_payload["ready"] is True
assert probe_payload["runtimeUsable"] is True
assert probe_payload["node"]["ok"] is True
Expand All @@ -1288,7 +1288,7 @@ credential_request = probe_requests[0]
assert credential_request.full_url == "https://api.inline.chat/v1/getMe"
assert credential_request.get_method() == "GET"
assert credential_request.get_header("Authorization") == f"Bearer {machine_token}"
assert credential_request.get_header("User-agent") == "inline-hermes-agent-adapter/0.0.20"
assert credential_request.get_header("User-agent") == "inline-hermes-agent-adapter/0.0.21"
assert all(call[0][-2:] != ["auth", "me"] for call in probe_calls)

setup_saved_env.clear()
Expand Down Expand Up @@ -1321,7 +1321,7 @@ assert config_probe_payload["probe"]["ok"] is True
assert len(config_probe_requests) == 1
assert config_probe_requests[0].full_url == "https://inline.example/v1/getMe"
assert config_probe_requests[0].get_header("Authorization") == "Bearer yaml-config-secret"
assert config_probe_requests[0].get_header("User-agent") == "inline-hermes-agent-adapter/0.0.20"
assert config_probe_requests[0].get_header("User-agent") == "inline-hermes-agent-adapter/0.0.21"
assert "yaml-config-secret" not in config_probe_stdout.getvalue()

setup_saved_env.clear()
Expand Down Expand Up @@ -1702,7 +1702,7 @@ async def assert_bot_command_sync():
thread_id=None,
)
assert handled is True
assert "Plugin version: 0.0.20" in sent[-1][1]
assert "Plugin version: 0.0.21" in sent[-1][1]
assert "Last catalog sync:" in sent[-1][1]

fallback = InlineAdapter(PlatformConfig(extra={**base_extra, "token": "path token"}))
Expand Down
6 changes: 3 additions & 3 deletions plugins/hermes-agent/tests/install.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -69,9 +69,9 @@ describe("inline-hermes installer", () => {

const versions = log.mock.calls.map((call) => String(call[0]))
expect(versions).toEqual([
"@inline-chat/hermes-agent-adapter@0.0.20",
"@inline-chat/hermes-agent-adapter@0.0.20",
"@inline-chat/hermes-agent-adapter@0.0.20",
"@inline-chat/hermes-agent-adapter@0.0.21",
"@inline-chat/hermes-agent-adapter@0.0.21",
"@inline-chat/hermes-agent-adapter@0.0.21",
])
})

Expand Down
2 changes: 1 addition & 1 deletion plugins/hermes-agent/tests/package-artifact.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -195,7 +195,7 @@ describe("packed artifact", () => {
encoding: "utf8",
stdio: ["ignore", "pipe", "pipe"],
}).trim()
expect(version).toBe("@inline-chat/hermes-agent-adapter@0.0.20")
expect(version).toBe("@inline-chat/hermes-agent-adapter@0.0.21")

const install = execFileSync(bin, ["install", "--hermes-home", hermesHome, "--force", "--json"], {
cwd: packageRoot,
Expand Down
Loading