Agent skill

Ak Init

by yaalalabs in yaalalabs/agent-kernel

Scaffold a new Agent Kernel project from scratch. An agent skill from yaalalabs/agent-kernel.

Apache-2.0Auto-check passedAI & LLM Engineering

Install Ak Init

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

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

GitHub CLI
$ gh skill install yaalalabs/agent-kernel ak-init --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-init .claude/skills/ak-init && 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-init
GitHub stars
192
Token cost
~2.8k tokens
SKILL.md length
599 words
Files
2
Skills in repo
23
Repo updated
First seen
Licence
Apache-2.0

At a glance

Scaffold a new Agent Kernel project from scratch. An agent skill from yaalalabs/agent-kernel.

  • Works in 4 steps: Gather Requirements → Generate the Project → Generate File Contents → …
  • Tasks that involve Building AI agents
  • Calls uv and python; needs OPENAI_API_KEY and GOOGLE_API_KEY
  • Tasks that involve Deployment

What it does

Ak Init is an agent skill from yaalalabs/agent-kernel. Scaffold a new Agent Kernel project from scratch. This skill guides you through choosing an agent framework, defining tools, selecting a deployment target, and generating a complete project with all necessary files. Designed for users who want to build a new AI agent using the Agent Kernel library.

Its SKILL.md is about 2.8k 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 AI & LLM Engineering, covering Building AI agents and Deployment. It works with Amazon Web Services, Google Cloud and Microsoft Azure. 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 Building AI agents
  • Tasks that involve Deployment

Example prompts

  • “/ak-init”

Requirements

  • Python 3
  • Docker
  • A credential in OPENAI_API_KEY
  • A credential in GOOGLE_API_KEY

Workflow steps

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

  1. Gather Requirements
  2. Generate the Project
  3. Generate File Contents
  4. Provide Setup Instructions

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:

    • uv
    • python

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

  • Network

    No URLs in SKILL.md. Its commands use uv, which can reach the network depending on how they are called.

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

  • Credentials

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

    • OPENAI_API_KEY
    • GOOGLE_API_KEY

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

Context cost

Ak Init loads about 2.8k tokens when it runs. Until then it costs about 77 tokens; SKILL.md has 599 words of instructions outside code blocks.

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

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). 599 words, ~2,832 tokens.

Download SKILL.mdSave it as .claude/skills/ak-init/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
ak-init
description
Scaffold a new Agent Kernel project from scratch. This skill guides you through choosing an agent framework, defining tools, selecting a deployment target, and generating a complete project with all necessary files. Designed for users who want to build a new AI agent using the Agent Kernel library.
license
Apache-2.0
metadata.author
yaalalabs
metadata.category
user

Scaffold an Agent Kernel Project

Use this skill to create a new AI agent project powered by Agent Kernel.

Instructions for the Agent

When the user wants to create a new agent project, follow this interactive workflow:

Step 1: Gather Requirements

Ask the user the following questions (adapt based on context):

  1. Agent framework: Which agent framework would you like to use?

    • OpenAI Agents SDK (recommended for most use cases — best tool support, handoffs between agents)
    • CrewAI (multi-agent collaboration with roles and tasks)
    • LangGraph (complex workflow graphs with state management)
    • Google ADK (Google's Agent Development Kit)
    • Smolagents (lightweight agent framework with managed-agent routing)
    • Pydantic AI (provider-agnostic — native OpenAI/Anthropic/Google/Bedrock/… support with FallbackModel failover)
  2. Agent purpose: What should your agent(s) do? (e.g., "customer support bot", "code review assistant", "data analysis agent")

  3. Tools: Does your agent need any custom tools? (e.g., "fetch weather data", "query a database", "search the web")

  4. Multi-agent: Do you need multiple specialized agents with a triage/routing agent?

  5. Deployment mode: How will you run the agent?

    • CLI (interactive terminal — great for development and testing)
    • REST API (FastAPI server — for web apps, webhooks, integrations)
    • AWS Lambda (serverless on AWS)
    • AWS ECS/Fargate (containerized on AWS)
    • Azure Functions (serverless on Azure)
    • Azure Container Apps (containerized on Azure)
    • GCP Cloud Run Serverless (scale-to-zero on GCP)
    • GCP Cloud Run Containerized (always-on on GCP)
    • Docker (generic container, runs anywhere)
  6. Session persistence: How should conversation state be stored?

    • In-memory (default, no persistence — fine for CLI and development)
    • Redis (recommended for production — works with all deployment targets)
    • DynamoDB (AWS-native, recommended for AWS serverless)
    • Cosmos DB (Azure-native, recommended for Azure serverless)
    • Firestore (GCP-native, recommended for GCP Cloud Run)
Step 2: Generate the Project

Based on the answers, generate the following project structure:

<project-name>/
├── pyproject.toml         # Dependencies and project metadata
├── build.sh               # Build script
├── config.yaml            # Agent Kernel configuration
├── <main-file>.py         # Agent definition (demo.py, app.py, or lambda.py)
├── tool.py                # Custom tool functions (if needed)
├── <main-file>_test.py    # Test file
├── README.md              # Project documentation
└── deploy/                # Deployment files (if cloud deployment selected)
    ├── main.tf
    ├── variables.tf
    ├── outputs.tf
    ├── terraform.tfvars
    ├── deploy.sh
    ├── Dockerfile          # For containerized deployments
    └── backend.tf
Step 3: Generate File Contents
pyproject.toml
toml
[project]
name = "<project-name>"
version = "0.1.0"
description = "<description>"
readme = "README.md"
requires-python = ">=3.12"
dependencies = [
    "agentkernel[<extras>]>=0.9.5",
]

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

[tool.uv]
package = false

[tool.isort]
profile = "black"
line_length = 120

[tool.black]
line-length = 120
target-version = ["py312"]

Extras selection:

  • CLI mode: agentkernel[cli,<framework>]
  • API mode: agentkernel[<framework>,api]
  • Smolagents framework extra: smolagents
  • Pydantic AI framework extra: pydanticai (installs the provider-agnostic pydantic-ai-slim core only — also add a provider, e.g. pydantic-ai-slim[openai])
  • With messaging: add slack, whatsapp, etc.
  • With session store: add redis, aws (for DynamoDB), azure (for Cosmos DB)
  • With tracing: add langfuse, openllmetry, logfire, or cloudwatch
Show full SKILL.md (250 more words)Show less
Agent definition file

For OpenAI framework (CLI mode):

python
from agentkernel.cli import CLI
from agentkernel.openai import OpenAIModule, OpenAIToolBuilder
from agents import Agent

# Import custom tools if needed
# from tool import my_tool

# Define specialized agents
<agent_name> = Agent(
    name="<name>",
    instructions="<instructions for this agent>",
    # tools=OpenAIToolBuilder.bind([my_tool]),  # if tools needed
)

# Define triage agent (if multi-agent)
triage_agent = Agent(
    name="triage",
    instructions="You determine which agent to use based on the user's question.",
    handoffs=[<agent_name>],
)

# Register with Agent Kernel
OpenAIModule([triage_agent, <agent_name>])

if __name__ == "__main__":
    CLI.main()

For OpenAI framework (API mode):

python
from agentkernel.api import RESTAPI
from agentkernel.openai import OpenAIModule
from agents import Agent

<agent_name> = Agent(
    name="<name>",
    instructions="<instructions>",
)

OpenAIModule([<agent_name>])

if __name__ == "__main__":
    RESTAPI.run()

For OpenAI framework (AWS Lambda):

python
from agentkernel.aws import Lambda
from agentkernel.openai import OpenAIModule
from agents import Agent

<agent_name> = Agent(
    name="<name>",
    instructions="<instructions>",
)

OpenAIModule([<agent_name>])

handler = Lambda.handler

For LangGraph framework:

python
from agentkernel.cli import CLI  # or RESTAPI, Lambda
from agentkernel.langgraph import LangGraphModule
from langchain_openai import ChatOpenAI
from langgraph.prebuilt import create_react_agent

model = ChatOpenAI(model="gpt-4o-mini", temperature=0.0)

<agent_name> = create_react_agent(
    name="<name>",
    tools=[],
    model=model,
    prompt="<instructions>",
)

LangGraphModule([<agent_name>])

if __name__ == "__main__":
    CLI.main()

For CrewAI framework:

python
from agentkernel.cli import CLI  # or RESTAPI, Lambda
from agentkernel.crewai import CrewAIModule
from crewai import Agent

<agent_name> = Agent(
    role="<role>",     # role= is the agent identifier in Agent Kernel
    goal="<goal>",
    backstory="<backstory>",
    verbose=False,
)

# Pass agents directly — Agent Kernel builds the Crew and Task internally per run
CrewAIModule([<agent_name>])

if __name__ == "__main__":
    CLI.main()

For Google ADK framework:

python
from agentkernel.cli import CLI  # or RESTAPI, Lambda
from agentkernel.adk import GoogleADKModule
from google.adk.agents import Agent

<agent_name> = Agent(
    name="<name>",
    model="gemini-2.0-flash",
    instruction="<instructions>",
)

GoogleADKModule([<agent_name>])

if __name__ == "__main__":
    CLI.main()

For Smolagents framework:

python
from agentkernel.cli import CLI  # or RESTAPI, Lambda
from agentkernel.smolagents import SmolagentsModule, SmolagentsToolBuilder
from smolagents import LiteLLMModel, ToolCallingAgent

model = LiteLLMModel(model_id="openai/gpt-4o")

<agent_name> = ToolCallingAgent(
    tools=SmolagentsToolBuilder.bind([]),
    model=model,
    name="<name>",
    description="<instructions>",
)

SmolagentsModule([<agent_name>])

if __name__ == "__main__":
    CLI.main()

For Pydantic AI framework:

python
from agentkernel.cli import CLI  # or RESTAPI, Lambda
from agentkernel.pydanticai import PydanticAIModule, PydanticAIToolBuilder
from pydantic_ai import Agent

# Provider-agnostic: swap the model string for "anthropic:...", "google-gla:...", etc.
# (install the matching provider extra, e.g. pydantic-ai-slim[anthropic]).
<agent_name> = Agent(
    model="openai:gpt-4o-mini",
    name="<name>",                # required — AK registers agents by name eagerly
    description="<short description>",  # set it — AK reports this as the agent description / A2A summary
    instructions="<instructions>",
    tools=PydanticAIToolBuilder.bind([]),
)

PydanticAIModule([<agent_name>])

if __name__ == "__main__":
    CLI.main()
Custom tools (tool.py)
python
from agentkernel.core import ToolContext


def <tool_name>(<params>) -> str:
    """<Tool description — this becomes the tool's description for the LLM>"""
    # Access session context if needed:
    # context = ToolContext.get()
    # session = context.session

    # Tool implementation
    return "<result>"

For OpenAI framework, bind tools using: tools=OpenAIToolBuilder.bind([<tool_name>]) For other frameworks, use their native tool binding mechanism.

config.yaml
yaml
# Session configuration (if not in-memory)
session:
  type: redis          # redis | dynamodb | cosmosdb
  cache: 256           # LRU cache size (optional)
  redis:
    prefix: "ak:<project>:"
    url: "redis://localhost:6379"

# Tracing (optional)
# trace:
#   enabled: true
#   type: langfuse     # langfuse | openllmetry | logfire | cloudwatch
test-config.yaml

Test harness configuration is not part of config.yaml — it lives in its own file, loaded only when tests run (a test: section left in config.yaml is ignored):

yaml
mode: score          # score | llm | fallback (default: fallback)
build.sh
bash
#!/bin/bash
uv venv && uv sync
Test file
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("<main-file>.py")
    await test.start()
    try:
        yield test
    finally:
        await test.stop()

@pytest.mark.order(1)
async def test_basic_response(test_client):
    await test_client.send("<sample question>")
    await test_client.expect(["<expected answer pattern>"])
Step 4: Provide Setup Instructions

After generating the project, tell the user:

  1. Set the required API key as environment variable:
    • OpenAI: export OPENAI_API_KEY=sk-...
    • Google: export GOOGLE_API_KEY=...
  2. Run chmod +x build.sh && ./build.sh to set up the environment
  3. Activate: source .venv/bin/activate
  4. Run: python <main-file>.py
  5. For tests: uv run pytest

What to Do Next

Your project is scaffolded and running. Here's the natural progression:

  • Add tools & agents → Use the ak-build skill to add new tools, specialist agents, and handoffs to your project. This is the skill you'll use most often as you iterate.
  • Add guardrails or tracing → Use the ak-add-capabilities skill to add input/output guardrails, observability tracing, session persistence, MCP, A2A, hooks, or multimodal support.
  • Connect a messaging platform → Use the ak-add-integration skill to add Slack, WhatsApp, Telegram, or other messaging channels.
  • Deploy to cloud → Use the ak-cloud-deploy skill to deploy to AWS or Azure with Terraform.
  • Set up testing → Use the ak-test skill to configure test modes and write agent tests.

© 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-init of yaalalabs/agent-kernel.

  • SKILL.md
  • evals/evals.json

Open the folder on GitHubat commit 97fa8d9

Compare with similar skills

Ak Init 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 Init compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Ak Init this skillyaalalabs/agent-kernel192—~2.8kAutomated safety check: PassApache-2.0
GCP To AWSaws/agent-toolkit-for-aws2.8k—~15kAutomated safety check: PassApache-2.0
Kcli Cluster Deploymentkarmab/kcli653—~1.5kAutomated safety check: PassApache-2.0
Microsoft Foundrymicrosoft/GitHub-Copilot-for-Azure2551 repos~6.7kAutomated safety check: PassMIT
Deploying Cloud Deception With Decoy Resourcesmukul975/Anthropic-Cybersecurity-Skills34k—~2.8kAutomated safety check: PassApache-2.0
Cloud Infrastructureaiskillstore/marketplace4301 repos~1.3kAutomated safety check: PassNone

Similar skills

  • GCP To AWS

    aws/agent-toolkit-for-aws

    Official

    Migrate workloads from Google Cloud Platform to AWS — plus AI and agentic workloads from any provider.

    2.8k GitHub stars~15k tokensUpdated today
    DevOps & CloudAuto-check passed
  • Guides deployment and management of Kubernetes clusters with kcli.

    653 GitHub stars~1.5k tokensUpdated today
    DevOps & CloudAuto-check passed
  • Microsoft Foundry

    microsoft/GitHub-Copilot-for-Azure

    Official

    Build, deploy, evaluate, optimize, fine-tune, and manage Microsoft Foundry agents, models, and resources end to end.

    255 GitHub starsUsed in 1 repo~6.7k tokens
    AI & LLM EngineeringAuto-check passed
  • Deploying Cloud Deception With Decoy Resources

    mukul975/Anthropic-Cybersecurity-Skills

    Deploy cloud-native deception across AWS, Azure, and GCP using decoy (honey) resources whose only purpose is to generate a high-fidelity alert the instant an attacker touches them: canary IAM access…

    34k GitHub stars~2.8k tokensUpdated 1 mo ago
    DevOps & CloudAuto-check passed
  • Cloud Infrastructure

    aiskillstore/marketplace

    Cloud infrastructure design and deployment patterns for AWS, Azure, and GCP.

    430 GitHub starsUsed in 1 repo~1.3k tokens
    DevOps & CloudAuto-check passed
  • CD Pipeline Generator

    ArabelaTso/Skills-4-SE

    Generate GitHub Actions deployment workflows for automated deployment to staging and production environments on cloud platforms (AWS, GCP, Azure).

    253 GitHub stars~1.3k tokensUpdated 1 mo ago
    DevOps & CloudAuto-check passed

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 Init

What does Ak Init do?

Scaffold a new Agent Kernel project from scratch. An agent skill from yaalalabs/agent-kernel. Ak Init is an agent skill from yaalalabs/agent-kernel. Scaffold a new Agent Kernel project from scratch.

When should I use Ak Init?

Ak Init fits situations like: tasks that involve Building AI agents; tasks that involve Deployment.

How do I install Ak Init in Claude Code?

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

How do I install Ak Init in Codex?

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

Can I use Ak Init 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-init -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-init, .gemini/skills/ak-init, .github/skills/ak-init and .opencode/skills/ak-init in your project.

What does Ak Init need to run?

Going by SKILL.md and its folder, Ak Init needs the command-line tools its instructions call (uv and python) and credentials named OPENAI_API_KEY and GOOGLE_API_KEY. Our summary lists: Python 3; Docker; A credential in OPENAI_API_KEY; A credential in GOOGLE_API_KEY.

Does Ak Init access the network?

SKILL.md contains no URLs. Its commands use uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Ak Init 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 Init use?

Ak Init 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 Init use?

About 2.8k tokens (SKILL.md is roughly 11k 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 Init?

Skills that share tags, products or a category with Ak Init: GCP To AWS (aws/agent-toolkit-for-aws, 2.8k stars), Kcli Cluster Deployment (karmab/kcli, 653 stars), Microsoft Foundry (microsoft/GitHub-Copilot-for-Azure, 255 stars) and Deploying Cloud Deception With Decoy Resources (mukul975/Anthropic-Cybersecurity-Skills, 34k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Ak Init?

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.