Test a managed instance
SkillWeb & browsingRun a real turn against a local managed agent instance with its team and tuning. Use to reproduce a conversation outside the browser, inspect native Deep task delegation, or verify that a runtime change reaches an instance.
Use Test a managed instance in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add Test a managed instance and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the Test a managed instance skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; Ahel provides instructions and does not run this skill.
No other account needed.
Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
What this skill tells your AI
The instructions your AI receives, as published by thalesgroup/fred in .claude/skills/test-agent-instance/SKILL.md and read by Ahel’s review.
Use scripts/run_agent_turn.py from this skill directory. It reuses Fred CLI auth and
AgentPodClient, sending only agent_instance_id with the owning team. A bare template
execution does not reproduce instance tuning. Both .agents/skills and .claude/skills
resolve this same shared skill; do not install a second copy.
1. Resolve identity and instance
Use the sibling psql skill to query the local fred database:
SELECT agent_instance_id, team_id, template_id, display_name, enabled
FROM agent_instance WHERE display_name ILIKE '%name%';
SELECT session_id, team_id, agent_instance_id, user_id, title
FROM session_metadata WHERE session_id = '<uuid>';
Confirm the selected authenticated user has access to that team. Reuse the cached
fred-agents-cli --login session, or set FRED_USERNAME and FRED_PASSWORD privately
from the developer's existing local fixture/config. Keep passwords out of command
arguments, transcripts and reports. Never invent authorization or copy another user's token.
Inspect the instance's tuning when diagnosing prompt/capability behavior. Resolve its
runtime binding from the configured runtime catalog; --pod-url must target that runtime,
not whichever pod happens to listen on the default port.
2. Check running code
Inspect the running backend command and startup/reload logs. Development reload works only when enabled and when the edited path is watched; production launchers do not reload. If the process is stale, coordinate a restart with the developer rather than restarting their backend silently. Record the running revision/config separately from the checkout being reviewed.
3. Execute one turn
From apps/fred-agents, using its installed environment:
./.venv/bin/python ../../.agents/skills/test-agent-instance/scripts/run_agent_turn.py \
--instance <instance-id> --team <team-id> \
--out-dir /tmp/agent-turn-unique --message 'Reply with a short greeting; do not use tools.'
Run --help for endpoint overrides and idle read timeout. Prefer a fresh session and a
harmless prompt: execution can spend model tokens and enabled tools can modify real data.
Pass longer prompts on stdin. --session continues a known session after checking its
instance through control-plane; continuation inherits previous history. Fresh runs register
session metadata before execution and abort if registration fails.
The output directory must not exist. It contains private events.jsonl (decoded SSE
payloads, in arrival order), final.md (complete final-event content), run.json (identity
of the run), and summary.json (observations). Known login password/access tokens are
redacted; arbitrary tool/user secrets cannot be identified reliably, so review payloads
before sharing. The console prints counts only.
4. Interpret evidence
Exit 0 means a final event arrived without execution/node errors or human approval being requested. Exit 1 indicates incomplete/error/HITL execution; exit 2 indicates setup failure. A successful process exit alone does not prove the agent answered correctly.
final.mduses the authoritativefinal.content, not concatenated deltas. An interrupted stream retains its received events but has no claimed complete answer. Empty final content may accompany UI parts: inspect the final event.taskis the default delegation tool;--fanout-toolselects another observed tool. Peak outstanding calls measures overlapping SSE call/result intervals, not actual concurrency. Missing events are not evidence that no child ran.- Match tool results to
call_id. Parent SSE may omit native child internals; do not assign interleaved deltas to children using time windows. Use the siblinginspect-conversationskill for trace IDs and parent observation links. - Token usage and finish reason are provider/runtime reports, not proof of semantic completeness. Check requested coverage and final text explicitly.
- Human approval is a pause: this helper never approves or resumes automatically.
Report observed identifiers, counts, final status and limitations separately from hypotheses. Keep private raw artifacts local, and include only reviewed excerpts in a shared report.
Signals
- GitHub stars
- 67
- Forks
- 32
- Last commit
- Oct 2026
Advanced
- Item type
- skill
- Key
test-agent-instance- Source
- github.com/thalesgroup/fred
Related picks
Skill · baekenough
The pick for Postgresbrowser-use
Skill · browser-use
More in Web & browsingwebapp-testing
Skill · anthropics
More in Web & browsingplaywright-cli
Skill · microsoft
More in Web & browsingbenchmark
Skill · affaan-m
More in Web & browsingopen-source
Skill · browser-use
More in Web & browsing