Skip to main content
 █████╗ ██╗███╗   ██╗██╗████████╗
██╔══██╗██║████╗  ██║██║╚══██╔══╝
███████║██║██╔██╗ ██║██║   ██║   
██╔══██║██║██║╚██╗██║██║   ██║   
██║  ██║██║██║ ╚████║██║   ██║   
╚═╝  ╚═╝╚═╝╚═╝  ╚═══╝╚═╝   ╚═╝   

Scaffold Production-Ready AI Agent Projects in Seconds

PyPI - Version Python Version Powered by uv License: MIT

An interactive CLI that bootstraps modular Python projects for AI agents with uv — frameworks, providers, tests, lint, type-check, and agent rules ready on day one.

Quick Start · Options · Features · Architecture · Developing ainit · Contributing · License


Quick Start

Run without a global install:

uvx --from ai-init ainit my_project

Or install the CLI:

# Recommended
uv tool install ai-init

# Or
pipx install ai-init

ainit my_project
# equivalent: ainit init my_project

Requires Python 3.10+ and uv on your PATH (the scaffold uses uv init / uv add).


Interactive CLI Experience

ainit walks you through the stack, then creates the project:

╭───────────────────────────────────────╮
│  █████╗ ██╗███╗   ██╗██╗████████╗     │
│ ██╔══██╗██║████╗  ██║██║╚══██╔══╝     │
│ ███████║██║██╔██╗ ██║██║   ██║        │
│ ██╔══██║██║██║╚██╗██║██║   ██║        │
│ ██║  ██║██║██║ ╚████║██║   ██║        │
│ ╚═╝  ╚═╝╚═╝╚═╝  ╚═══╝╚═╝   ╚═╝        │
│ Scaffold AI Agent projects in seconds │
╰───────────────────────────────────────╯
? Framework: LangGraph
? LLM Provider: Gemini
? Storage / Vector DB: None
? Observability: None
? Test runner: Pytest
? Linter/formatter: Ruff
? Type check config: None
? Agent rules: All

🛠️ Creating project in: ./my_project

✨ Project created successfully!

1. cd my_project
2. Fill in the keys in the .env file
3. Run the tests: uv run pytest
4. Try it out: uv run python main.py

Defaults: Pytest, Ruff, type-check None, agent rules All.


Scaffold Options

Prompt Choices
Framework LangChain, LangGraph, Deep Agents, CrewAI, PydanticAI, Microsoft Agent Framework, LlamaIndex, Google ADK, OpenAI Agents SDK, None
LLM Provider OpenAI, Anthropic, Groq, DeepSeek, Gemini, Multi-Provider
Storage / Vector DB Qdrant, PostgreSQL, Redis, ChromaDB, Neo4j, None
Observability LangSmith, Arize, Loguru, OpenTelemetry, None
Test runner Pytest (default), unittest
Linter/formatter Ruff (default), None
Type check None (default), Pyright (Pylance-compatible)
Agent rules All (default), AGENTS.md, CLAUDE.md, .cursorrules, None

What gets installed

  • Framework / provider: matching PyPI packages via uv add (LangChain adapters only for LangChain / LangGraph / Deep Agents).
  • Storage packages today: Qdrant → qdrant-client; PostgreSQL → psycopg2-binary, pgvector, sqlalchemy; Redis → redis. ChromaDB / Neo4j are selectable for project intent; wire-up packages can be extended later.
  • Observability packages today: LangSmith, Arize Phoenix, Loguru. OpenTelemetry is selectable; package wiring can be extended later.
  • Ruff: uv add --dev ruff + [tool.ruff] in pyproject.toml.
  • Pyright: uv add --dev basedpyright + [tool.pyright] (Pylance reads the same config).
  • Agent rules: markdown/rules files teaching agents to use uv / uv run (never pip), plus the chosen test/lint commands.
  • .env: provider key placeholders (OPENAI_API_KEY, GOOGLE_API_KEY, DEEPSEEK_API_KEY, etc.).

Features

  • uv-native scaffold — uv init + uv add / uv add --dev
  • Broad agent framework menu — including a pure SDK path with None
  • Providers — OpenAI, Anthropic, Groq, DeepSeek, Gemini, Multi-Provider
  • Day-one tooling — Pytest or unittest smoke tests; optional Ruff and Pyright
  • Agent-ready docs — optional AGENTS.md, CLAUDE.md, .cursorrules
  • Modular layout — src/{agent,tools,models,prompts,storage,utils,api} + tests/

Generated Architecture

my_project/
├── .env                  # Provider key placeholders
├── .gitignore
├── AGENTS.md             # Optional (Cursor)
├── CLAUDE.md             # Optional (Claude Code)
├── .cursorrules          # Optional
├── pyproject.toml        # uv-managed (+ ruff/pyright when selected)
├── main.py               # Entry point
├── src/
│   ├── agent/
│   ├── api/
│   ├── models/llm.py     # Stub LLM factory
│   ├── prompts/
│   ├── storage/
│   ├── tools/
│   └── utils/
└── tests/
    └── test_smoke.py     # Pytest or unittest

Post-Setup Workflow

cd my_project
# edit .env with real API keys

Tests (depends on what you chose):

uv run pytest
# or
uv run python -m unittest

Lint / format (if Ruff was selected):

uv run ruff check .
uv run ruff format .

Type check (if Pyright was selected):

uv run basedpyright

Run:

uv run python main.py

Developing ainit

This repository (the CLI itself) uses uv + Ruff + Pytest. CI runs on every push/PR to main.

git clone https://github.com/mpraes/ainit.git
cd ainit
uv sync --extra dev

uv run ruff check src tests
uv run ruff format --check src tests
uv run pytest

Local CLI against your checkout:

uv run ainit my_project
# or
PYTHONPATH=src python -m ainit.cli my_project

Releases: bump version in pyproject.toml, merge to main, then tag vX.Y.Z (see .github/workflows/release.yml).


Contributing

  1. Fork and create a feature branch.
  2. Use uv for dependencies (uv add / uv sync) — not pip.
  3. Keep changes typed and covered by tests where practical.
  4. Run uv run ruff check src tests, uv run ruff format src tests, and uv run pytest before opening a PR.
  5. Open a Pull Request against main.

License

Distributed under the MIT License. See LICENSE.

Developed with ❤️ by @mpraes.

Metadata

Release files for ai-init 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for ai-init 0.2.0
File Size Uploaded Provenance
ai_init-0.2.0.tar.gz 48.1 kB With provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for ai-init 0.2.0
File Interpreter ABI Platform
ai_init-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 60.4 kB

Release files / ai_init-0.2.0.tar.gz

Download URL ai_init-0.2.0.tar.gz
Size 48.1 kB
Tags Source
SHA-256 checksum
How to use checksums
08834a68a34fcb605714f6d6961fa0932957f8829845f9067a17e8860a4ead7e
BLAKE2b-256 checksum
How to use checksums
e91956ffc2f9802066ea210efa816354890853e3da37204c242cf958ad2a27ba
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.

Transparency log

Release files / ai_init-0.2.0-py3-none-any.whl

Download URL ai_init-0.2.0-py3-none-any.whl
Size 12.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
04e86c00815eb2892d09d0c35222c44331b73ad704f9b960d407ebfdbc536a34
BLAKE2b-256 checksum
How to use checksums
0dbd6b31ce1284f5464c5f618738bcf8523b1c4dc8adb341bf8214825566eae9
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
Yes
Uploaded via twine/7.0.0 CPython/3.13.14

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.

Transparency log

Security for ai-init 0.2.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

Full provenance

All 2 files in this release have been uploaded with provenance metadata.

Select from 2 files

Attestation for ai_init-0.2.0.tar.gz

PyPI Publish Attestation

PyPI verified that this artifact, at this checksum, originated from the publisher listed below.

Signed by GitHub Actions, verified by PyPI on Aug 11, 2026.

Transparency log

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files Full provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page