Agent skill

A2ui Python Development

by a2ui-project in a2ui-project/a2ui

Grounding, architectural standards, Python best practices, package facade conventions, testing, and verification workflows for developing any Python code across the entire A2UI repository (core…

Apache-2.0Auto-check passedDevelopment

Install A2ui Python Development

skills CLI
$ npx skills add a2ui-project/a2ui --skill a2ui-python-development -a claude-code

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

GitHub CLI
$ gh skill install a2ui-project/a2ui a2ui-python-development --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/a2ui-project/a2ui.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/a2ui-python-development .claude/skills/a2ui-python-development && 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
a2ui-python-development
GitHub stars
17k
Token cost
~2.4k tokens
SKILL.md length
946 words
Files
1
Skills in repo
20
Repo updated
First seen
Licence
Apache-2.0

At a glance

Grounding, architectural standards, Python best practices, package facade conventions, testing, and verification workflows for developing any Python code across the entire A2UI repository (core…

  • Works in 6 steps: Specification and Blueprint Grounding → Target Architecture & Package Boundaries → Public Facades vs. Deep Module Imports → …
  • Implementing features
  • SKILL.md covers 1. Specification and Blueprint…, 2. Target Architecture &…, 3. Public Facades vs. Deep… and 4. Coding Standards & Python…, plus 2 more sections
  • Calls uv

What it does

A2ui Python Development is an agent skill from a2ui-project/a2ui. Grounding, architectural standards, Python best practices, package facade conventions, testing, and verification workflows for developing any Python code across the entire A2UI repository (core libraries, agent SDKs, evaluators, tooling, scripts, and samples). Use whenever implementing features, writing or refactoring Python code, organizing module exports, or writing tests in Python.

Its SKILL.md is about 2.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Development, covering Building AI agents and Refactoring. It works with Python. The licence is Apache-2.0.

When your agent uses it

  • Implementing features
  • Refactoring Python code
  • Organizing module exports
  • Writing tests in Python

Example prompts

  • “/a2ui-python-development”

Requirements

  • Python 3

Workflow steps

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

  1. Specification and Blueprint Grounding
  2. Target Architecture & Package Boundaries
  3. Public Facades vs. Deep Module Imports
  4. Coding Standards & Python Best Practices
  5. Tooling & Mandatory Verification Workflow
  6. Pre-Submission Checklist for Python PRs

What it can do on your machine

Read from SKILL.md and the folder at commit ae466ff. 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

    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 no API keys, tokens, secrets or passwords.

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

Context cost

A2ui Python Development loads about 2.4k tokens when it runs. Until then it costs about 103 tokens; SKILL.md has 946 words of instructions outside code blocks.

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

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 a2ui-project/a2ui at commit ae466ff, republished under its Apache-2.0 licence (© a2ui-project). 946 words, ~2,433 tokens.

Download SKILL.mdSave it as .claude/skills/a2ui-python-development/SKILL.md (or your agent's skills folder).
name
a2ui-python-development
description
Grounding, architectural standards, Python best practices, package facade conventions, testing, and verification workflows for developing any Python code across the entire A2UI repository (core libraries, agent SDKs, evaluators, tooling, scripts, and samples). Use whenever implementing features, writing or refactoring Python code, organizing module exports, or writing tests in Python.

Python Development and Best Practices Skill

This skill guides AI assistants writing, maintaining, or refactoring any Python code across the entire A2UI repository (including core state libraries, agent SDKs, builders, evaluation pipelines, tools, scripts, and samples). These best practices apply uniformly to all Python code in the codebase, not specific folders. It outlines package boundaries, coding standards, facade architecture, avoidance of deep imports, and mandatory verification workflows.


1. Specification and Blueprint Grounding

Before modifying or implementing Python code, consult the authoritative specifications:


2. Target Architecture & Package Boundaries

Python code across the repository spans SDK libraries, agent implementations, evaluation harnesses, tooling, and scripts. The primary SDK library packages are managed as a uv workspace under python/:

  • a2ui_core (python/a2ui_core/):
    • Framework-agnostic runtime state and processing engine.
    • Implements DataModel (reactive JSON pointer mutations), SurfaceModel, MessageProcessor, and PayloadValidator.
    • Boundary rule: a2ui_core contains no LLM prompting, parsing, or agent orchestration logic.
  • a2ui_agent (python/a2ui_agent/):
    • Agent-side orchestration and prompting framework.
    • Implements A2uiGenerator, A2uiRequestProcessor, format strategies (DirectJsonFormat, ExpressFormat), and prompt generators.
  • a2ui.builder (python/a2ui_agent/src/a2ui/builder/):
    • Strongly typed Pydantic v2 fluent builders for components and basic catalogs.
    • Versioned by protocol (e.g. a2ui.builder.v0_9) to ensure protocol immutability.
  • catalogs/mcp (python/catalogs/mcp/):
    • Model Context Protocol (MCP) catalog bindings.
  • Evaluators, Tools, Scripts, and Samples (eval/, tools/, scripts/, samples/agent/):
    • Evaluation harnesses, developer utilities, repository automation scripts, and sample agents that consume or support the Python SDKs.
    • Must adhere to the same architectural standards, clean facade imports, and code hygiene rules.

3. Public Facades vs. Deep Module Imports

The Architectural Rule

Never expose, rely on, or demonstrate deep internal submodule import paths.

python
# ❌ BAD: Deep import into internal implementation details
from a2ui.builder.v0_9.catalogs.basic import Card, Column, Text, Button
from a2ui.core.processing.message_processor import MessageProcessor
from a2ui.core.state.data_model import DataModel

# ✅ GOOD: Importing from public package facades
from a2ui.builder.v0_9 import Action, ActionEvent, Button, Card, Column, Text
from a2ui.core import DataModel, MessageProcessor, PayloadValidator
How to Implement Public Facades
  1. Use __init__.py with Explicit __all__: Every public package must curate its public API in __init__.py and define an explicit __all__ list.
  2. Hide Internal Submodules: Submodules that are internal implementation details should either be prefixed with an underscore (_internal.py), placed in private directories (_compat.py), or omitted from __all__.
  3. Example and Documentation Hygiene: All README.md files, docstring examples, blueprints, and sample applications must exclusively demonstrate imports using public package facades.
The Constants Exception

Constants that are formally part of the public protocol API (e.g., SPEC_VERSION, PROTOCOL_VERSION) may be exported from a lightweight, dependency-free leaf module (e.g., a2ui.core.schema.v0_9.constants or a2ui.schema.constants):

  • Callers requiring only protocol constants should be able to depend on the leaf module without pulling in the entire agent or runtime dependency tree.
  • When refactoring packages, keep existing leaf constant imports stable while ensuring the new structure exposes them through the canonical versioned schema facade.

4. Coding Standards & Python Best Practices

Modern Typing & Pydantic v2
  • Strict Type Annotations: All function signatures and module APIs must be fully typed. Use modern Python typing features (T | None instead of Optional[T], list[T] instead of List[T]).
  • Pydantic v2 Patterns:
    • Use model_dump(by_alias=True, exclude_none=True) for serialization.
    • Use TypeAdapter or Pydantic models for JSON validation rather than hand-rolled validators.
    • Parameter metadata: Prefer typing.Annotated[T, Field(description="...")] or Annotated[T, "description"] over fragile, hand-rolled docstring parsing.
Show full SKILL.md (416 more words)Show less
Error Hierarchy & Exception Handling
  • Base Exception: All exceptions in the SDK inherit from A2uiError in a2ui.core.
  • Specialized Exceptions:
    • A2uiValidationError: Schema, property, or constraint violations.
    • A2uiParseError: Syntax or formatting errors in LLM output.
    • A2uiStateError: Surface lifecycle or state inconsistencies.
    • A2uiCatalogError: Catalog negotiation or lookup failures.
    • A2uiExpressionError: Local expression or function evaluation failures.
  • Fail Loudly: Avoid silent fallbacks that swallow errors or mask invalid inputs. When an unknown schema node or format is encountered, raise an informative error naming the offending property or path.
Catalog-Agnostic Design
  • Do not hardcode catalog-specific component names, property rules, or syntax filters into core parsers, prompt generators, or compilers.
  • Component property rules, constraints, and hints must be dynamically derived from the component catalog JSON schema.
Import Organization and Sorting

Maintain strict, predictable import organization following standard Python (PEP 8) conventions:

  1. Future Imports: Place from __future__ import annotations at the very top of the file (directly below the module docstring/license header).
  2. Three-Group Hierarchy: Group imports into three distinct sections separated by a single blank line:
    • Standard library (e.g., import os, import sys, from typing import Any, Mapping)
    • Third-party packages (e.g., import pytest, from pydantic import BaseModel, Field)
    • First-party / repository packages (e.g., from a2ui.builder.v0_9 import Button, Card, from a2ui.core import DataModel)
  3. Alphabetical Sorting:
    • Within each group, sort import statements alphabetically by module name.
    • For multi-symbol from <module> import (...) statements, sort the imported symbols alphabetically (e.g., from a2ui.builder.v0_9 import Action, ActionEvent, Button, Card, Column, Text).
  4. No Wildcard Imports: Never use wildcard imports (from module import *) in application, library, or test code. Explicitly name every imported symbol.

5. Tooling & Mandatory Verification Workflow

All Python code across the entire repository must pass formatting, type checking, and unit testing via uv before submission.

1. Synchronize Dependencies
bash
uv sync --all-packages
2. Formatting (fix_format.sh / Pyink)

Directly run the repository's formatting script to format code in place (faster and saves tokens compared to checking first):

bash
./scripts/fix_format.sh

Or format Python code directly in place:

bash
uv run pyink .
3. Type Checking (Mypy)

Strict type checking must pass across all workspace packages:

bash
uv run mypy .
4. Unit & Conformance Tests (Pytest)

Run all pytest test suites:

bash
# Run all tests
uv run pytest

# Run specific package tests
uv run pytest python/a2ui_core/tests
uv run pytest python/a2ui_agent/tests
5. Build Verification

Verify that all packages build valid distributions:

bash
uv build --all

6. Pre-Submission Checklist for Python PRs

  • Grounded in authoritative specification/ schemas and blueprints/.
  • Public symbols exported through package-level __init__.py with explicit __all__.
  • No deep internal module imports in code, tests, docstrings, or READMEs.
  • Imports grouped (standard library, third-party, local) and sorted alphabetically.
  • Formatted with ./scripts/fix_format.sh (or uv run pyink .).
  • uv run mypy . passes with zero errors.
  • uv run pytest passes 100%.
  • uv build --all completes successfully.

© a2ui-project, 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

Just SKILL.md in .agents/skills/a2ui-python-development of a2ui-project/a2ui.

Open the folder on GitHubat commit ae466ff

Compare with similar skills

A2ui Python Development 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.

A2ui Python Development compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
A2ui Python Development this skilla2ui-project/a2ui17k—~2.4kAutomated safety check: PassApache-2.0
Coding Agentmastra-ai/mastra29k—~2.3kAutomated safety check: PassCustom licence
Adk Sample Creatorgoogle/adk-python22k—~1.3kAutomated safety check: PassApache-2.0
Dignified Python Standardsdocling-project/docling68k—~1.5kAutomated safety check: PassApache-2.0
Azure AI Projects Python SDKmicrosoft/skills3.1k6 repos~2.8kAutomated safety check: PassMIT
Readable Pycrazyguitar/pysheeet8.2k—~2.4kAutomated safety check: PassMIT

Similar skills

  • Coding Agent

    mastra-ai/mastra

    Authoring playbook for building agents that write, edit, review, or refactor code.

    29k GitHub stars~2.3k tokensUpdated today
    DevelopmentAuto-check passed
  • Adk Sample Creator

    google/adk-python

    Official

    Creates a new sample agent in the ADK Python repository — the sample directory, its agent.py, and its README.md — following the conventions the existing samples already use.

    22k GitHub stars~1.3k tokensUpdated today
    DevelopmentAuto-check passed
  • Dignified Python Standards

    docling-project/docling

    Applies opinionated production Python conventions chosen by the project's Python version: modern type syntax, pathlib, explicit checks and interface guidance.

    68k GitHub stars~1.5k tokensUpdated today
    DevelopmentAuto-check passed
  • Official

    Reference for building on Microsoft Foundry with the azure-ai-projects Python SDK: project clients, versioned agents, evaluations, connections, datasets and indexes.

    3.1k GitHub starsUsed in 6 repos~2.8k tokens
    AI & LLM EngineeringAuto-check passed
  • Readable Py

    crazyguitar/pysheeet

    Readable Python code rules inspired by The Art of Readable Code.

    8.2k GitHub stars~2.4k tokensUpdated today
    DevelopmentAuto-check passed
  • Nexus Mapper

    Haaaiawd/Nexus-skills

    Generate a persistent .nexus-map/ knowledge base that lets any AI session instantly understand a codebase's architecture, systems, dependencies, and change hotspots.

    166 GitHub starsUsed in 1 repo~2.5k tokens
    DevelopmentAuto-check: notes

More from a2ui-project/a2ui

All 20 skills in this repo
  • A2ui Remediate Problem

    a2ui-project/a2ui

    Remediates a specific recommendation from an A2UI compliance report issue, or resolves any general GitHub issue, by inspecting context, implementing minimal targeted fixes, verifying tests, creating…

    17k GitHub stars~1.5k tokensUpdated today
    Auto-check passed
  • A2ui Issue Triage

    a2ui-project/a2ui

    Automates the triage of GitHub issues in the A2UI repository.

    17k GitHub stars~1.5k tokensUpdated today
    Auto-check passed
  • A2ui Audit

    a2ui-project/a2ui

    Main coordination skill to run the blueprint compliance, documentation synchronization, and test quality audits, posting the combined results as a labeled GitHub issue.

    17k GitHub stars~1.6k tokensUpdated today
    Auto-check passed
  • Iterative benchmarking, evaluation, and algorithmic optimization of alternative A2UI inference formats (such as Express, Atom, and Elemental).

    17k GitHub stars~985 tokensUpdated today
    Auto-check passed
  • Automated generator for strongly typed Pydantic v2 data models and basic catalogs across any A2UI protocol version (v0.8, v0.9, v0.9.1, v1.0, etc.).

    17k GitHub stars~2.3k tokensUpdated today
    Auto-check passed
  • A2ui Release Python

    a2ui-project/a2ui

    Releases the Python SDKs (a2ui-core, a2ui-agent-sdk) to PyPI by running preflight checks, dispatching the release workflow as a dry run, confirming with the maintainer, publishing, and following the…

    17k GitHub stars~4.2k tokensUpdated today
    Auto-check passed

Works with

Questions about A2ui Python Development

What does A2ui Python Development do?

Grounding, architectural standards, Python best practices, package facade conventions, testing, and verification workflows for developing any Python code across the entire A2UI repository (core…. A2ui Python Development is an agent skill from a2ui-project/a2ui. Grounding, architectural standards, Python best practices, package facade conventions, testing, and verification workflows for developing any Python code across the entire A2UI repository (core libraries, agent SDKs, evaluators, tooling, scripts, and samples).

When should I use A2ui Python Development?

A2ui Python Development fits situations like: implementing features; refactoring Python code; organizing module exports; writing tests in Python.

How do I install A2ui Python Development in Claude Code?

Run `npx skills add a2ui-project/a2ui --skill a2ui-python-development -a claude-code`. Or copy the skill folder (.agents/skills/a2ui-python-development in a2ui-project/a2ui) into .claude/skills/a2ui-python-development in your project. Claude Code loads it when a task matches its description.

How do I install A2ui Python Development in Codex?

Run `npx skills add a2ui-project/a2ui --skill a2ui-python-development -a codex`. Or copy the skill folder (.agents/skills/a2ui-python-development in a2ui-project/a2ui) into .agents/skills/a2ui-python-development in your project. Codex loads it when a task matches its description.

Can I use A2ui Python Development 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 a2ui-project/a2ui --skill a2ui-python-development -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/a2ui-python-development, .gemini/skills/a2ui-python-development, .github/skills/a2ui-python-development and .opencode/skills/a2ui-python-development in your project.

What does A2ui Python Development need to run?

Going by SKILL.md and its folder, A2ui Python Development needs the command-line tools its instructions call (uv). Our summary lists: Python 3.

Does A2ui Python Development 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 A2ui Python Development 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 A2ui Python Development use?

A2ui Python Development is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does A2ui Python Development use?

About 2.4k tokens (SKILL.md is roughly 9.7k 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 A2ui Python Development?

Skills that share tags, products or a category with A2ui Python Development: Coding Agent (mastra-ai/mastra, 29k stars), Adk Sample Creator (google/adk-python, 22k stars), Dignified Python Standards (docling-project/docling, 68k stars) and Azure AI Projects Python SDK (microsoft/skills, 3.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains A2ui Python Development?

a2ui-project (a GitHub organization) maintains it in a2ui-project/a2ui, which has 16,602 GitHub stars. The repository holds 20 skills in this directory. The repository was last updated on October 7, 2026.

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