arthur-observability-sdk/.claude/skills/test-unit/SKILL.md
Run the arthur-observability-sdk unit tests. Use when you want to verify SDK logic without building a wheel or spinning up external services.
npx skillsauth add arthur-ai/arthur-engine test-unitInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Unit tests cover Arthur initialization, env-var resolution, prompt management, context helpers, and telemetry setup. They run entirely in-process — no wheel build, no network calls.
python/src/arthur_genai_client/ must exist (it is gitignored). If missing:
./scripts/generate_openapi_client.sh generate python
./scripts/generate_openapi_client.sh install python
From the arthur-observability-sdk/python/ directory:
uv run pytest tests -m unit_tests -v
uv run pytest tests/test_client.py -v
uv run pytest tests/test_client.py::test_arthur_requires_task_or_service_name -v
uv run pytest tests -m unit_tests -k "env" -v
@pytest.mark.unit_tests (via pytestmark at the module level).OTLPSpanExporter boundary or use InMemorySpanExporter — no real OTLP endpoint needed.arthur_genai_client and fail with ModuleNotFoundError, the generated client is missing (python/src/arthur_genai_client/). Run the generate-client skill first.tools
--- name: arthur-onboard-verify description: Arthur onboarding sub-skill — Step 7: Verify that traces are flowing from the instrumented application to Arthur Engine. Reads credentials from .arthur-engine.env. allowed-tools: Bash, Read --- # Arthur Onboard — Step 7: Verify Instrumentation ## Read State ```bash cat .arthur-engine.env 2>/dev/null || echo "(no state file)" ``` Parse `ARTHUR_ENGINE_URL`, `ARTHUR_API_KEY`, `ARTHUR_TASK_ID`. --- ## Tell the User to Run Their Application Show the
tools
--- name: arthur-onboard-task description: Arthur onboarding sub-skill — Step 3: Set up an Arthur Task (create or select). Reads/writes .arthur-engine.env. allowed-tools: Bash, Read, Write, Edit --- # Arthur Onboard — Step 3: Set Up Arthur Task **Goal:** Establish `ARTHUR_TASK_ID` in `.arthur-engine.env`. ## Read State ```bash cat .arthur-engine.env 2>/dev/null || echo "(no state file)" ``` Parse `ARTHUR_ENGINE_URL`, `ARTHUR_API_KEY`, and `ARTHUR_TASK_ID` from the output. **State write hel
tools
--- name: arthur-onboard-prompts description: Arthur onboarding sub-skill — Step 6: Extract prompts from the target repository and register them with Arthur Engine. Reads credentials from .arthur-engine.env. allowed-tools: Bash, Read, Task --- # Arthur Onboard — Step 6: Extract & Register Prompts ## Read State ```bash cat .arthur-engine.env 2>/dev/null || echo "(no state file)" ``` Parse `ARTHUR_ENGINE_URL`, `ARTHUR_API_KEY`, `ARTHUR_TASK_ID`. --- ## Extract Prompts via Sub-agent Delegate
development
Onboard an agentic application to the Arthur SaaS Platform (platform.arthur.ai). Guides through authentication, workspace selection, engine deployment, model creation, code instrumentation, trace verification, and eval configuration.