Agent skill

Ak Test

by yaalalabs in yaalalabs/agent-kernel

Set up testing and debug common issues in Agent Kernel projects.

Apache-2.0Auto-check passedAgent Workflows

Install Ak Test

skills CLI
$ npx skills add yaalalabs/agent-kernel --skill ak-test -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install yaalalabs/agent-kernel ak-test --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/yaalalabs/agent-kernel.git skills-src && mkdir -p .claude/skills && cp -r skills-src/ak-py/src/agentkernel/skills/ak-test .claude/skills/ak-test && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
ak-test
GitHub stars
192
Token cost
~3.9k tokens
SKILL.md length
1,211 words
Files
2
Skills in repo
23
Repo updated
First seen
Licence
Apache-2.0

At a glance

Set up testing and debug common issues in Agent Kernel projects.

  • Works in 5 steps: Add Test Dependencies → Choose a Test Mode → Write CLI Agent Tests → …
  • Tasks that involve Agent evaluation and testing
  • Calls pip, uv and terraform; reaches comet.com; needs TYPESAFE_API_KEY

What it does

Ak Test is an agent skill from yaalalabs/agent-kernel. Set up testing and debug common issues in Agent Kernel projects. This skill guides you through configuring the built-in test framework, writing agent tests, choosing test modes (score, llm, fallback), and troubleshooting common errors.

Its SKILL.md is about 3.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 2 other files (for example `evals/evals.json`).

It sits in Agent Workflows, covering Agent evaluation and testing. The repository describes itself as: The Operating System for Scalable Enterprise AI Agents - Run, orchestrate, and deploy Compliant Enterprise AI Agents at scale across frameworks, without lock-in, rewrites or… The licence is Apache-2.0.

When your agent uses it

  • Tasks that involve Agent evaluation and testing

Example prompts

  • “/ak-test”

Requirements

  • Python 3
  • A credential in TYPESAFE_API_KEY

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Add Test Dependencies
  2. Choose a Test Mode
  3. Write CLI Agent Tests
  4. Write API Agent Tests
  5. Run Tests

What it can do on your machine

Read from SKILL.md and the folder at commit 97fa8d9. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • pip
    • uv
    • terraform
    • curl
    • redis-cli
    • aws
    • az
    • ngrok

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • comet.com

    Also links to:

    • docs.typesafe.ai

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • TYPESAFE_API_KEY

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Ak Test loads about 3.9k tokens when it runs. Until then it costs about 61 tokens; SKILL.md has 1,211 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~61
When it runs · the whole SKILL.md, loaded when a task matches
~3.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from yaalalabs/agent-kernel at commit 97fa8d9, republished under its Apache-2.0 licence (© yaalalabs). 1,211 words, ~3,922 tokens.

Download SKILL.mdSave it as .claude/skills/ak-test/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
ak-test
description
Set up testing and debug common issues in Agent Kernel projects. This skill guides you through configuring the built-in test framework, writing agent tests, choosing test modes (score, llm, fallback), and troubleshooting common errors.
license
Apache-2.0
metadata.author
yaalalabs
metadata.category
user

Testing & Debugging

Use this skill to set up testing for your Agent Kernel project or debug issues.

Instructions for the Agent

Setting Up Tests
1. Add Test Dependencies

Update pyproject.toml:

toml
[dependency-groups]
dev = [
    "agentkernel[test]>=0.9.5",
    "black>=23.0.0",
    "isort>=5.0.0",
    "mypy>=1.0.0",
]

Run uv sync to install test dependencies.

2. Choose a Test Mode

Create test-config.yaml in the directory you run tests from — it is a separate, un-nested file (no top-level test: key), loaded only when the test harness runs. A test: section left over in config.yaml is ignored:

yaml
mode: score       # Options: score | llm | fallback (default: fallback)
ModeHow it WorksBest For
scoreDeterministic string-match scoring (built-in deepeval: Scorer.quasi_exact_match_score; built-in opik: graded LevenshteinRatio; built-in jev has no score mode)Deterministic responses, exact answers
llmLLM evaluates if response is semantically correct (deepeval and opik: GEval; jev: a hosted yes/no Noul question)Open-ended responses, creative agents
fallbackTries score first, falls back to llm if score failsGeneral-purpose testing

For llm mode, configure the llm model:

yaml
mode: llm
llm:
  model: gpt-4o-mini
  provider: openai

Evaluator backend: evaluator selects the scoring backend used by both score and llm modes — deepeval (the default, pip install "agentkernel[test]"), opik (pip install "agentkernel[opik]", Opik by Comet, runs entirely locally) and jev (pip install "agentkernel[jev]", hosted TypeSafe JEV judge: mode: llm only, needs TYPESAFE_API_KEY, sends the comparison text to api.typesafe.ai) are the three built-ins. Set it to a dotted path (e.g. my_evaluator.MyEvaluator) to bring your own AKEvaluator subclass instead:

yaml
evaluator: opik   # switch to another built-in (jev also needs mode: llm)
yaml
mode: fallback
evaluator: my_evaluator.MyEvaluator   # resolves against my_evaluator.py next to your test file
2a. Bring Your Own Evaluator (optional)

Use this when none of the built-in evaluators' scoring fits your agent — e.g. deepeval's binary exact-match score mode is too strict and opik's graded LevenshteinRatio still doesn't capture what you need, or you want a judge call that doesn't depend on DeepEval/Opik/JEV at all, or a domain-specific rubric. No AK core change is required: any dotted path to an AKEvaluator subclass works as the evaluator: value, resolved the same way sandbox providers and session stores resolve their own bring-your-own backends.

  1. Create a module next to your test file (e.g. my_evaluator.py) and subclass AKEvaluator, importing the interface from agentkernel.test.core.evaluator:

    python
    from agentkernel.test.core.evaluator import (
        AKEvaluationCase,
        AKEvaluationError,
        AKEvaluationResult,
        AKEvaluator,
        AKMissingInput,
    )
    
    class MyEvaluator(AKEvaluator):
        def evaluate_by_score(self, case: AKEvaluationCase) -> AKEvaluationResult:
            if not case.expected:
                raise AKMissingInput("evaluate_by_score requires AKEvaluationCase.expected")
            score = ...  # your deterministic, offline scoring logic
            return AKEvaluationResult(
                metric="my_metric",
                evaluator="my_evaluator",
                score=score,
                passed=score >= case.threshold,
            )
    
        def evaluate_by_llm(self, case: AKEvaluationCase) -> AKEvaluationResult:
            if not case.expected:
                raise AKMissingInput("evaluate_by_llm requires AKEvaluationCase.expected")
            try:
                score = ...  # your judge call (any LLM client — litellm, an SDK, a hosted judge)
            except Exception as exc:
                raise AKEvaluationError(f"judge call failed: {exc}") from exc
            return AKEvaluationResult(
                metric="my_llm_metric",
                evaluator="my_evaluator",
                score=score,
                passed=score >= case.threshold,
            )
  2. Both methods are synchronous and must set result.passed themselves — Test.compare decides whether a failing passed is fatal (raises AssertionError) or, with return_metrics=True, returned to the caller; it never overrides passed.

  3. Follow the same error contract every evaluator (built-in or custom) must honor: raise AKMissingInput if a required AKEvaluationCase field (usually expected) is missing; raise AKEvaluationError if your backend fails (bad credentials, transport error, unparseable judge output) — never return a 0.0 to stand in for a failure, since 0.0 must only ever mean "scored zero". If your evaluator only supports one of the two modes (e.g. judge-only, no offline scoring), raise AKMetricNotSupported from the other and set mode to the supported one (e.g. mode: llm) — fallback does not catch it, so the error propagates and the test fails.

  4. Point test-config.yaml at it by dotted path — module_name.ClassName, resolved against the module's location (next to your test file, since that's what's on sys.path under pytest's default import mode):

    yaml
    evaluator: my_evaluator.MyEvaluator
  5. No AK extra beyond agentkernel[test] is needed unless your evaluator's own dependencies (an LLM client, a scoring library) require one — each built-in's import (deepeval, opik, jev) lives entirely inside its own resolution branch, so a custom evaluator never pulls any in.

See examples/cli/custom-evaluator/ for a complete worked example — a stdlib-only Jaccard token-overlap scorer plus a raw litellm judge call, no DeepEval dependency at all — and docs/docs/testing/cli-testing.md for the reference documentation.

3. Write CLI Agent Tests

For agents running via CLI (demo.py):

python
import pytest
import pytest_asyncio
from agentkernel.test import Test

pytestmark = pytest.mark.asyncio(loop_scope="session")


@pytest_asyncio.fixture(scope="session", loop_scope="session")
async def test_client():
    test = Test("demo.py")       # Path to your agent definition file
    await test.start()
    try:
        yield test
    finally:
        await test.stop()


@pytest.mark.order(1)
async def test_greeting(test_client):
    await test_client.send("Hello!")
    await test_client.expect(["Hello", "Hi", "Greetings"])


@pytest.mark.order(2)
async def test_specific_question(test_client):
    await test_client.send("What is the capital of France?")
    await test_client.expect(["Paris"])


@pytest.mark.order(3)
async def test_follow_up(test_client):
    # Follow-up questions work because session state is maintained
    await test_client.send("What is its population?")
    await test_client.expect(["2 million", "2.1 million", "approximately 2 million"])

Key patterns:

  • Use @pytest.mark.order(n) for sequential tests where context matters
  • Use scope="session" fixtures so the agent stays running across tests
  • expect() takes a list of acceptable answer patterns
  • The test framework uses the configured mode to compare responses
  • Pass return_metrics=True to expect() (or Test.compare()) to get back an AKEvaluationResult (score, evaluator, metric, reason) instead of raising AssertionError on a mismatch — useful for asserting on the score itself rather than just pass/fail
4. Write API Agent Tests

For agents running via REST API:

python
import asyncio
import os
import subprocess
import sys
import uuid

import httpx
import pytest
import pytest_asyncio
from agentkernel.test import Test

pytestmark = pytest.mark.asyncio(loop_scope="session")


class APITestClient:
    def __init__(self, url: str):
        self.url = url
        self.session_id = str(uuid.uuid4())

    async def send(self, prompt: str, agent: str = "triage") -> str:
        payload = {
            "prompt": prompt,
            "session_id": self.session_id,
            "agent": agent,
        }
        async with httpx.AsyncClient(timeout=30.0) as client:
            resp = await client.post(f"{self.url}/run", json=payload)
            resp.raise_for_status()
            return resp.json().get("result", "")


@pytest_asyncio.fixture(scope="session", loop_scope="session")
async def http_client():
    # Option A: Test against running server
    endpoint = os.getenv("AK_TEST_ENDPOINT", "http://localhost:8000")

    # Option B: Start server in fixture
    # proc = subprocess.Popen(["python3", "app.py"], stdout=sys.stdout, stderr=sys.stderr)
    # await asyncio.sleep(5)

    yield APITestClient(endpoint)

    # proc.terminate(); proc.wait()  # if using Option B


@pytest.mark.order(1)
async def test_basic_question(http_client):
    response = await http_client.send("What is 2+2?")
    Test.compare(response, ["4", "The answer is 4"])


@pytest.mark.order(2)
async def test_agent_routing(http_client):
    response = await http_client.send("Tell me about World War 2")
    Test.compare(response, ["World War II", "World War 2", "WWII"])
5. Run Tests
bash
uv run pytest                          # All tests
uv run pytest demo_test.py             # Specific file
uv run pytest -k "test_greeting"       # By name pattern
uv run pytest -x                       # Stop on first failure
uv run pytest -v                       # Verbose output
uv run pytest --tb=long                # Full tracebacks

Debugging Common Issues
Issue: "No agents available"

Symptom: CLI shows "No agents available. Please load an agent module using !load."

Cause: The Module constructor was not called, so no agents are registered with Runtime.

Fix: Ensure your agent file calls the Module constructor:

python
# This line registers agents with the global Runtime
OpenAIModule([triage_agent, math_agent])
Show full SKILL.md (523 more words)Show less
Issue: Session state not persisting

Symptom: Agent doesn't remember context from previous messages.

Causes & Fixes:

  1. In-memory sessions (default): State is lost when the process restarts. Switch to Redis/DynamoDB/CosmosDB for persistence.
  2. Different session IDs: Ensure you're using the same session_id across requests.
  3. Lambda cold starts: Session state must be stored externally. Use Redis or DynamoDB.

Check session config:

yaml
session:
  type: redis
  redis:
    url: "redis://localhost:6379"
    prefix: "ak:myproject:"
Issue: "ToolContext not available"

Symptom: RuntimeError: ToolContext is not set inside a tool function.

Cause: The tool is being called outside of the agent execution context.

Fix: Ensure tool functions are bound via the framework's ToolBuilder and called within agent execution. Don't call tool functions directly outside of Runtime.run().

python
# Correct: bound via ToolBuilder
tools = OpenAIToolBuilder.bind([my_tool])
agent = Agent(name="test", tools=tools, instructions="...")

# Inside tool function:
def my_tool(query: str) -> str:
    context = ToolContext.get()  # Works during agent execution
    session = context.session
    return "result"
Issue: Guardrail blocks all requests

Symptom: Every request returns a guardrail violation message.

Fixes:

  1. Check guardrail config — ensure config_path points to a valid JSON file
  2. Review guardrail rules — thresholds may be too strict
  3. Check the guardrail model — ensure model field is correct
  4. Disable temporarily to isolate: set enabled: false in config
Issue: Import errors for framework packages

Symptom: ModuleNotFoundError: No module named 'agents' (or crewai, langgraph, etc.)

Fix: Install the correct extras:

bash
pip install "agentkernel[openai]"     # For OpenAI Agents SDK
pip install "agentkernel[crewai]"     # For CrewAI
pip install "agentkernel[langgraph]"  # For LangGraph
pip install "agentkernel[adk]"        # For Google ADK
pip install "agentkernel[smolagents]" # For Smolagents
pip install "agentkernel[pydanticai]" # For Pydantic AI (add a provider, e.g. pydantic-ai-slim[openai])

Or in pyproject.toml:

toml
dependencies = ["agentkernel[openai,api]>=0.9.5"]
Issue: Redis connection errors

Symptom: ConnectionError: Error connecting to Redis or similar.

Fixes:

  1. Verify Redis is running: redis-cli ping should return PONG
  2. Check the URL in config: redis://host:port format
  3. For AWS ElastiCache: ensure your app is in the same VPC
  4. Check security groups / firewall rules
Issue: Terraform deployment fails

Symptom: terraform apply errors out.

Common fixes:

  1. Run terraform init first
  2. Check AWS/Azure credentials: aws sts get-caller-identity or az account show
  3. Verify the Terraform module version matches your agentkernel version
  4. Check that required variables are set in terraform.tfvars
  5. For state conflicts: terraform state list and terraform state rm to clean up
Issue: Webhook not receiving messages

Symptom: Messages sent on Slack/WhatsApp/etc. don't reach the agent.

Fixes:

  1. Verify webhook URL is publicly accessible (use ngrok for local dev: ngrok http 8000)
  2. Check platform webhook configuration points to the correct path:
    • Slack: /slack/events
    • WhatsApp: /whatsapp/webhook
    • Telegram: /telegram/webhook
  3. Verify environment variables (bot tokens, signing secrets)
  4. Check server logs for incoming webhook requests
  5. Test health endpoint: curl http://localhost:8000/health

Enabling Debug Logging

Add to config.yaml:

yaml
logging:
  ak:
    level: DEBUG  # Agent Kernel logger level (INFO, DEBUG, ERROR, WARNING, CRITICAL)
  system:
    level: DEBUG  # System/root logger level (affects process-wide logging)

Or set environment variables:

bash
export AK_LOGGING__AK__LEVEL=DEBUG
# Optional: Enable system-wide debug logging
export AK_LOGGING__SYSTEM__LEVEL=DEBUG
  • logging.ak.level controls Agent Kernel's own logger verbosity
  • logging.system.level controls the process-wide/root logger (use with caution as it affects all application logging)
  • If you do not want Agent Kernel to modify application-wide logging, omit the system section
Health Check Endpoint

All API-mode agents expose a health endpoint:

bash
curl http://localhost:8000/health
# {"status": "ok"}

Use this to verify your server is running and accessible.


What to Do Next

Your tests are set up and passing. Here's what you might do next:

  • Add more tools & agents → Use the ak-build skill to iterate on your project — add new capabilities, then come back here to add tests for them.
  • Deploy to cloud → Use the ak-cloud-deploy skill to deploy your tested agent to AWS or Azure.
  • Add guardrails → Use the ak-add-capabilities skill to add input/output guardrails, tracing, or session persistence.
  • Connect a messaging platform → Use the ak-add-integration skill to make your tested agent available on Slack, WhatsApp, or other channels.

© yaalalabs, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in ak-py/src/agentkernel/skills/ak-test of yaalalabs/agent-kernel.

  • SKILL.md
  • evals/evals.json

Open the folder on GitHubat commit 97fa8d9

Compare with similar skills

Ak Test next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Ak Test compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ak Test this skillyaalalabs/agent-kernel192—~3.9kAutomated safety check: PassApache-2.0
Copilot Session Failure Analysisdotnet/maui23k—~3.4kAutomated safety check: PassMIT
Autocontext for Hermesgreyhaven-ai/autocontext1.3k—~2.5kAutomated safety check: PassApache-2.0
Operational Value Designergithub/gh-aw5.4k—~6.8kAutomated safety check: PassMIT
AWS Agentic AIzxkane/aws-skills367—~2.5kAutomated safety check: PassMIT
Agentic Harness Design and ReviewNateBJones-Projects/OB14.7k—~1.8kAutomated safety check: PassCustom licence

Similar skills

  • Mines local Copilot CLI session logs for dotnet/maui to rank costly or failing runs, tag recurring failure modes, propose repo edits and emit guard evals.

    23k GitHub stars~3.4k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • Autocontext for Hermes

    greyhaven-ai/autocontext

    Lets a Hermes agent run Autocontext scenarios, inspect Hermes curator state, export reusable knowledge and prepare local MLX or CUDA training data through the autoctx CLI.

    1.3k GitHub stars~2.5k tokensUpdated 2 days ago
    Agent WorkflowsAuto-check passed
  • Official

    Designs and verifies a deterministic grader that measures whether a GitHub Agentic Workflow run reached its real-world or repository outcome.

    5.4k GitHub stars~6.8k tokensUpdated today
    Agent WorkflowsAuto-check passed
  • AWS Agentic AI

    zxkane/aws-skills

    AWS Bedrock AgentCore comprehensive expert for deploying and managing AI agents at scale.

    367 GitHub stars~2.5k tokensUpdated 3 mo ago
    Agent WorkflowsAuto-check passed
  • Agentic Harness Design and Review

    NateBJones-Projects/OB1

    Designs, evaluates and improves the harness around an AI agent: tool permissions, approval gates, state, memory, evals and observability, with phased plans.

    4.7k GitHub stars~1.8k tokensUpdated yesterday
    Agent WorkflowsAuto-check passed
  • Deep Researcher Maintain CI

    NVIDIA-AI-Blueprints/deep-researcher-agent

    A skill your agent uses when changing Deep Researcher Agent continuous integration, pre-commit, or contributor governance — editing .github/workflows/ (ci, ui, skills-eval, request-nvskills-ci)…

    885 GitHub stars~1.5k tokensUpdated yesterday
    Agent WorkflowsAuto-check: notes

More from yaalalabs/agent-kernel

All 23 skills in this repo
  • Ak Dev Code Quality

    yaalalabs/agent-kernel

    Code quality standards, formatting, Python style rules (classes over script-style functions, configuration-field rules), commit conventions, and PR workflow for Agent Kernel development.

    192 GitHub stars~2.5k tokensUpdated today
    Auto-check passed
  • Ak Dev New Evaluator Provider

    yaalalabs/agent-kernel

    Step-by-step guide for adding a new built-in test evaluator provider to Agent Kernel (beyond DeepEval, Opik and JEV).

    192 GitHub stars~3.4k tokensUpdated today
    Auto-check passed
  • Ak Dev New Guardrail Provider

    yaalalabs/agent-kernel

    Step-by-step guide for adding a new guardrail provider to Agent Kernel.

    192 GitHub stars~3.5k tokensUpdated today
    Auto-check passed
  • Step-by-step guide for adding a new knowledge base backend to Agent Kernel.

    192 GitHub stars~5.1k tokensUpdated today
    Auto-check passed
  • Ak Dev New Messaging Integration

    yaalalabs/agent-kernel

    Step-by-step guide for adding a new messaging platform integration to Agent Kernel.

    192 GitHub stars~4.6k tokensUpdated today
    Auto-check passed
  • Ak Dev New Multimodal Storage

    yaalalabs/agent-kernel

    Step-by-step guide for adding a new multimodal attachment storage backend to Agent Kernel.

    192 GitHub stars~4.3k tokensUpdated today
    Auto-check passed

Questions about Ak Test

What does Ak Test do?

Set up testing and debug common issues in Agent Kernel projects. Ak Test is an agent skill from yaalalabs/agent-kernel. Set up testing and debug common issues in Agent Kernel projects.

When should I use Ak Test?

Ak Test fits situations like: tasks that involve Agent evaluation and testing.

How do I install Ak Test in Claude Code?

Run `npx skills add yaalalabs/agent-kernel --skill ak-test -a claude-code`. Or copy the skill folder (ak-py/src/agentkernel/skills/ak-test in yaalalabs/agent-kernel) into .claude/skills/ak-test in your project. Claude Code loads it when a task matches its description.

How do I install Ak Test in Codex?

Run `npx skills add yaalalabs/agent-kernel --skill ak-test -a codex`. Or copy the skill folder (ak-py/src/agentkernel/skills/ak-test in yaalalabs/agent-kernel) into .agents/skills/ak-test in your project. Codex loads it when a task matches its description.

Can I use Ak Test in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add yaalalabs/agent-kernel --skill ak-test -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ak-test, .gemini/skills/ak-test, .github/skills/ak-test and .opencode/skills/ak-test in your project.

What does Ak Test need to run?

Going by SKILL.md and its folder, Ak Test needs the command-line tools its instructions call (pip, uv, terraform, curl, redis-cli and aws) and credentials named TYPESAFE_API_KEY. Our summary lists: Python 3; A credential in TYPESAFE_API_KEY.

Does Ak Test access the network?

SKILL.md names 2 domains. In commands or code: comet.com; the agent is likely to contact it when it follows the instructions. As links in the text: docs.typesafe.ai. This is read from the text; nothing was executed.

Is Ak Test safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Ak Test use?

Ak Test is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Ak Test use?

About 3.9k tokens (SKILL.md is roughly 16k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Ak Test?

Skills that share tags, products or a category with Ak Test: Copilot Session Failure Analysis (dotnet/maui, 23k stars), Autocontext for Hermes (greyhaven-ai/autocontext, 1.3k stars), Operational Value Designer (github/gh-aw, 5.4k stars) and AWS Agentic AI (zxkane/aws-skills, 367 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Ak Test?

yaalalabs (a GitHub organization) maintains it in yaalalabs/agent-kernel, which has 192 GitHub stars. The repository holds 23 skills in this directory. The repository was last updated on October 9, 2026.

Source: yaalalabs/agent-kernel on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.