Skip to content

feat: tag claude-code harness on signup + plugin-setup prompt#17

Merged
dimavrem22 merged 9 commits into
mainfrom
feat/agent-signup-harness
Jun 26, 2026
Merged

feat: tag claude-code harness on signup + plugin-setup prompt#17
dimavrem22 merged 9 commits into
mainfrom
feat/agent-signup-harness

Conversation

@dimavrem22

@dimavrem22 dimavrem22 commented Jun 25, 2026

Copy link
Copy Markdown
Contributor

Tags this harness on self-signup and gives the in-session agent a heads-up about setting up the plugin.

Changes

  • setup_wizard.py: pass harness="claude-code" to Inkbox.signup(...) so the backend records which harness self-signed-up.
  • prompts.py: add a short CHANNEL_PROMPT note telling the agent to ask the human for permission before configuring this plugin, since it wires native messaging channels into the runtime.

Dependency

Depends on the Inkbox SDK gaining the optional harness parameter on signup(...) (coordinated PR). Passing it is forward-compatible.

Related PRs (agent-signup harness)

Pass harness="claude-code" to Inkbox.signup so self-signups record which
harness created them (forward-compatible with the SDK's new optional
harness param). Also add a brief channel-prompt note telling the agent to
ask the human for permission before configuring this plugin, since it
wires native messaging channels into the runtime.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@dimavrem22

Copy link
Copy Markdown
Contributor Author

codex: This now passes harness="claude-code" into Inkbox.signup, but the plugin still declares/installs inkbox>=0.4.7, and _ensure_inkbox_sdk() returns immediately when any older SDK imports successfully. Since the harness keyword is introduced by the SDK PR (0.4.9), existing environments with inkbox==0.4.7 can raise TypeError before the request reaches the server. Please bump the dependency/bootstrap minimum to the SDK version that supports harness, or feature-detect the signup signature and fall back cleanly.

The signup flow passes harness="claude-code", a kwarg only supported by
the Inkbox SDK from 0.4.9 onward. Bump the pin across pyproject, the
wizard's INKBOX_REQUIREMENTS, and the doctor/gateway hints, and guard the
bootstrap against an already-installed too-old SDK: _ensure_inkbox_sdk now
treats inkbox < 0.4.9 like an unsatisfied requirement and routes it through
the existing pip-install/upgrade path so it upgrades to a harness-capable
SDK before signup is attempted.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@dimavrem22

Copy link
Copy Markdown
Contributor Author

Fixed in f5178f9: bumped inkbox>=0.4.7>=0.4.9 (pyproject, INKBOX_REQUIREMENTS, doctor/gateway hints, and the requirement-string test) and added a min-version guard in _ensure_inkbox_sdk() — an importable-but-stale (<0.4.9) SDK is now treated as unsatisfied and upgraded via the existing pip path before the harness= signup call, so the TypeError path is closed.

0.4.10 is the release that introduces the agent-signup harness param;
0.4.9 was an earlier release that predates it.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@dimavrem22

Copy link
Copy Markdown
Contributor Author

Correction to my earlier note: the harness-capable SDK release is 0.4.10, not 0.4.9 (0.4.9 is the Rust SDK release). Pins, INKBOX_REQUIREMENTS, the _ensure_inkbox_sdk() min-version guard, doctor/gateway hints, and the requirement-string tests are now all 0.4.10 (c860b25).

dimavrem22 and others added 5 commits June 25, 2026 05:10
Rework the setup-guidance copy so the agent confirms with its human and
sets up the plugin together, never starting on its own.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
The plugin's setup wizard already configures the plugin during signup, so a
separate agent-facing "ask permission, then set it up yourself" instruction is
redundant. Drop it; keep the harness= signup tagging.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Mirror openclaw-plugin's CI. The inkbox SDK is deliberately not installed
(tests mock it, and inkbox>=0.4.10 with the harness= kwarg isn't on PyPI yet),
so CI installs only the deps the tests actually import.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@dimavrem22 dimavrem22 marked this pull request as ready for review June 26, 2026 20:15
@dimavrem22 dimavrem22 merged commit cb1a7f3 into main Jun 26, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant