Skip to content
cccskills
FreePublished on GitHubEnglish overview

testing-heterogeneous-agents

Run a manually approved live compatibility matrix for supported CLI agents and the models advertised by the server. It checks whether requests complete through LobeHub Desktop and the official provider path, then produces per-cell evidence and a structured report.

OriginalShow the original description

Manually runs the live LobeHub official-provider compatibility matrix across Claude Code, Codex, Grok Build, Kimi Code, Pi, and TRAE when explicitly invoked by the user.

lobehub/lobehub83,502 stars(GitHub 83,502 + cccskills 0)

Run score Not tested

See how to install

Good for

  • Discover available agent and model combinations
  • Check a change across selected CLI agents
  • Review evidence from a live compatibility run

Overview

What it does

Run live compatibility checks through LobeHub Desktop for Claude Code, Codex, Grok Build, Kimi Code, Pi, TRAE, and models offered by the server. Requests go from each agent’s CLI through the official provider path. The checks record whether a request and response complete, along with relay, provider, and model information. First list available combinations, then run the selected cells sequentially. Results include an evidence file for each cell and a summary report, making it possible to investigate failures at boundaries such as CLI startup, authentication, and request routing.

When it helps

Use it to check compatibility between external CLI agents and official providers before or after a change, while limiting the run to selected agents or models.

Example requests

  • “List the available agent and model combinations.”
  • “Check this model with Claude Code and Codex.”
  • “Run the compatibility matrix for the approved scope.”

Notes

Live runs are manual and require approval for scope and cost. A signed-in Electron environment and the selected CLIs are required. The skill does not install or update CLIs or perform OAuth sign-in. Runs require --confirm-live and process cells sequentially.

This overview was written by AI (OpenAI Codex) from the public SKILL.md. Check the original below for the exact behavior.

Document check

AI checked the SKILL.md for operations that need care and for setup requirements. The score comes only from actually running the skill (hands-on test).

SafetyAre sending data, deleting files, and running commands disclosed?
AGoodIt requires cost approval and `--confirm-live`, and runs cells sequentially.
Easy setupDoes it need few tools or API keys, and are they documented?
BPartly lackingIt requires a signed-in Electron setup and CLIs but gives no installation steps.

Not counted in the score. Rated by AI (OpenAI Codex) as of Oct 26, 2026. Treat it as a guide and read the original before installing.

Disagree? Request a re-evaluation

Tell us which point is wrong and why. No login needed. We will check it against the SKILL.md, redo the evaluation, and show the result here.

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

Files included (4)

  • SKILL.md6.9 KB
  • agents/openai.yaml43 B
  • scripts/official-smoke.mjs31.4 KB
  • scripts/official-smoke.test.sh13.4 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Testing Heterogeneous Agents

This project skill extends acceptance with one scenario: proving that every server-advertised official model completes through each supported external CLI agent and LobeHub's server-default provider binding.

It does not replace Acceptance. Use Acceptance for the plan, approval gate, evidence contract, immutable rounds, publishing, and teardown. Use .agents/acceptance/PROJECT.md for LobeHub's Electron launch, auth, CDP, and multi-instance commands. This skill owns only the compatibility-matrix semantics and its executable harness.

Manual Invocation Only

The user invokes this skill with /testing-heterogeneous-agents in Claude Code or $testing-heterogeneous-agents in Codex. Do not automatically load or execute it as part of development, debugging, acceptance, or release tasks, and do not schedule it. A reference from another skill is not permission to invoke it. Manual invocation still requires scope and cost approval before live requests.

Scope

The matrix covers:

  • Claude Code, Codex, Grok Build, Kimi Code, Pi, and TRAE;
  • models returned by the live getServerDefaultHeterogeneousCapability response;
  • the real Desktop renderer → IPC → CLI → official relay path;
  • the ingress selected by each agent (anthropic-messages or openai-responses);
  • a unique marker round trip plus authoritative relay, provider, and model observations.

It does not cover user-defined providers, user-managed API keys, general model quality, tool-use quality, or ordinary chat-agent execution. Add a separate scenario instead of silently widening this matrix.

Harness

HARNESS=.agents/skills/testing-heterogeneous-agents/scripts/official-smoke.mjs

# Discover the live matrix and installed CLI versions. Makes no model calls.
node "$HARNESS" list --json

# Narrow discovery when validating one change.
node "$HARNESS" list --agent claude-code,codex --model MODEL_ID --json

# Execute selected or all cells through the real official provider.
node "$HARNESS" run --confirm-live --topic-id TOPIC_ID --cdp 9222

Filters, topic id, and non-default CDP port are optional when the attached Electron window already supplies the intended scope.

Exit codes:

CodeMeaning
0Every selected cell passed
1At least one selected cell failed
2No failures, but at least one cell was blocked
3Electron, authentication, topic, or capability preflight failed

Run Workflow

1. Load the parent contract and project adapter

Read the acceptance skill, .agents/acceptance/PROCESS.md, and .agents/acceptance/PROJECT.md. Follow their approval and teardown rules. This scenario makes billable requests and creates server operation records, so never infer permission to run it from a request to inspect or list the matrix.

2. Discover before spending

Run list --json first. It reads the live capability response and probes only already-installed CLI binaries with version/help flags. Use its exact cells as the plan; do not maintain a second hard-coded model list.

Report missing CLIs as blocked. Do not install, update, or sign in to an external CLI during this workflow. To suppress Claude Code's background update paths even during detection, start or restart the Electron instance with:

DISABLE_AUTOUPDATER=1 DISABLE_UPDATES=1 \
  .agents/acceptance/scripts/electron-dev.sh start

3. Establish the Electron surface

Use the Electron section of .agents/acceptance/PROJECT.md to attach to an already-running signed-in instance or start one for this run. Confirm an active personal topic or pass --topic-id. Never trigger an interactive OAuth flow.

4. Confirm scope, cost, and history

For each live run, present the discovered agents/models and obtain the Acceptance plan approval before passing --confirm-live. Run sequentially; do not parallelize cells because the CLIs share profiles and provider quota.

For repeated manual runs of the same compatibility scope, reuse one stable Acceptance subject so every execution becomes another immutable round in the same history. Previous runs do not authorize another live run.

5. Execute once

Run the selected matrix with --confirm-live. By default each CLI receives an isolated workspace inside the report directory. Pass --cwd only when a real project workspace is part of the compatibility claim.

The harness starts each cell idempotently in the renderer and polls it with short host-side evaluations. Do not replace this with one long agent-browser eval: long evaluations can be retried by the driver and duplicate live requests.

6. Inspect and publish the round

The harness writes an Acceptance-compatible result.json, one text evidence artifact per cell, and a structured matrix table under:

.records/reports/<timestamp>-heterogeneous-official-provider-smoke/

Unless --report-dir selects another location. Inspect the report and evidence; do not infer success from the process exit code alone. Publish it with the clean production lh acceptance run ingest environment required by .agents/acceptance/PROCESS.md. Confirm that every matrix cell has its required text evidence and return only the stable Acceptance URL.

7. Diagnose failures at the owning layer

Use each failed cell's evidence to identify the first broken boundary:

  1. CLI launch or authentication;
  2. request ingress and metadata normalization;
  3. official relay/provider/model selection;
  4. raw CLI output;
  5. heterogeneous adapter or terminal mapping.

Load the heterogeneous-agent skill for raw trace, adapter, IPC, persistence, or terminal-event diagnosis. A model refusing one ingress but passing another is a request-compatibility signal, not proof of an adapter bug.

Safety Invariants

  • run requires --confirm-live; never bypass this gate.
  • Never invoke installers, updaters, or sign-in flows.
  • Never read custom provider credentials for this matrix.
  • Claude Code cells receive both update-disabling environment variables.
  • Missing binaries are blocked, not repaired automatically.
  • Cells run sequentially to limit quota and profile contention.
  • The harness listens to direct IPC and does not persist chat messages.
  • Stop only the Electron instance started by the current run.

Harness Self-Test

The self-test uses a fully stubbed agent-browser; it launches no browser, external CLI, or model request:

bash .agents/skills/testing-heterogeneous-agents/scripts/official-smoke.test.sh

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

acceptance

FreeSummary

Use this skill to verify a delivery by exercising the real product through a suitable surface such as a CLI, web app, desktop app, or iOS Simulator. It helps create or find a verification plan, capture evidence, and publish an acceptance report.

  • Verifying a completed product change
  • Collecting screenshots or other evidence
  • Creating a verification plan and report
lobehub/lobehub83.5KUpdated Oct 26, 2026

Use this skill to add an AI model provider to LobeHub across runtime integration, model cards, settings, branding, documentation, and acceptance checks. It also covers provider documentation updates and distinguishes new providers from models added to an existing provider.

  • Integrating a new AI model provider into LobeHub
  • Updating setup or usage documentation for a provider
  • Checking whether a model needs a new provider integration
lobehub/lobehub83.5KUpdated Oct 26, 2026

add-setting-env

FreeSummary

Use this skill to add a server-side environment variable that sets a default for a user setting. It walks through validation, server configuration and store merging, plus updating the example environment file and self-hosting documentation.

  • Adding an environment variable for a setting default
  • Wiring a new setting domain into server config
  • Documenting a new variable for self-hosting
lobehub/lobehub83.5KUpdated Oct 26, 2026

Provides guidance for registering hooks around an agent’s execution steps, tool calls, human approvals, context compression, and sub-agent calls. Hooks can observe events, supply local mock tool results, or use webhooks to allow or deny tool results under configured policies.

  • Observing agent steps and tool errors
  • Mocking tool results during local execution
  • Requiring webhook decisions before or after a tool call
lobehub/lobehub83.5KUpdated Oct 26, 2026

agent-signal

FreeSummary

Build event-driven background workflows for agents by defining sources, interpreting them as signals, and running actions through policies. It also guides asynchronous handoffs, deduplication, scoped execution, completion receipts, and observability.

  • Adding a new event source to an agent workflow
  • Routing interpreted signals to concrete background actions
  • Enqueuing work for asynchronous processing
lobehub/lobehub83.5KUpdated Oct 26, 2026

Use this skill to run end-to-end acceptance checks for bot channels in real desktop chat apps. It drives apps such as Discord, Slack, Telegram, WeChat, Lark, and QQ to send a message, wait for a response, and capture the result.

  • Checking a bot response in a real Discord channel
  • Testing chat behavior through Slack or Telegram
  • Capturing a bot interaction in a native macOS app
lobehub/lobehub83.5KUpdated Oct 26, 2026

See all skills by lobehub

Report a problem with this skill