architecture-decisions

Guides framework, runtime, database, node, and test tier selection for Kailash SDK projects.

Updated Apr 2, 2026
One-click install
npx skills add https://github.com/Hamza-Haadi/disease-risk-classifier-hamza --skill architecture-decisions-hamza-haadi
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: architecture-decisions
Source: https://github.com/Hamza-Haadi/disease-risk-classifier-hamza/tree/main/.claude/skills/13-architecture-decisions
Command: npx skills add https://github.com/Hamza-Haadi/disease-risk-classifier-hamza --skill architecture-decisions-hamza-haadi

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Choosing between Core SDK, DataFlow, Nexus, and Kaizen—or between runtimes, databases, nodes, and test tiers—leads to costly architectural mistakes when made without structured guidance. This Skill provides decision matrices, flowcharts, and rules so you select the right Kailash components before writing code. ## Core Features & Use Cases - Framework Selection: Decision matrix and flowchart comparing Core SDK, DataFlow, Nexus, and Kaizen, including combination patterns like DataFlow + Nexus. - Runtime & Database Decisions: Rules for AsyncLocalRuntime vs LocalRuntime (Docker/FastAPI vs CLI) and PostgreSQL vs SQLite (production vs development). - Node & Test Tier Selection: Guidance for picking from 110+ nodes and choosing unit, integration, or E2E test tiers, plus failure analysis and 5-Why root cause frameworks. - Use Case: Starting a new database-backed API project, you consult the decision flows to choose DataFlow + Nexus with AsyncLocalRuntime and PostgreSQL, avoiding a mismatched architecture. ## Quick Start Ask which Kailash framework, runtime, database, node, or test tier fits your project requirements.

Frequently Asked Questions about architecture-decisions

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I choose between Core SDK, DataFlow, Nexus, and Kaizen?▼

Choose Core SDK for custom workflows with fine-grained control, DataFlow for database operations with auto-generated nodes, Nexus for multi-channel API/CLI/MCP platforms, and Kaizen for AI agent systems. The frameworks are built on Core SDK and can be combined, such as DataFlow + Nexus for multi-channel database apps.

Should I use LocalRuntime or AsyncLocalRuntime?▼

Use AsyncLocalRuntime for Docker, FastAPI, and high-concurrency production deployments, where it runs 10-100x faster. Use LocalRuntime for CLI scripts, synchronous contexts, and pytest tests. The get_runtime() helper auto-detects the appropriate runtime.

PostgreSQL vs SQLite for DataFlow applications?▼

Use PostgreSQL for production deployments and high-concurrency workloads, and SQLite for development and testing where fast setup matters. Never use SQLite for production high-concurrency scenarios, and always configure connection pooling.

How do I pick the right node for a task in Kailash?▼

Use PythonCodeNode for custom logic, LLMNode or provider nodes for AI tasks, DataFlow auto-generated nodes for database operations, APICallNode for HTTP calls, FileReaderNode for files, and SwitchNode for conditional routing. The nodes-quick-index reference covers the full 110+ node catalog.

When should I use unit vs integration vs E2E test tiers?▼

Use Tier 1 unit tests for individual functions with mocking allowed, Tier 2 integration tests for workflow execution against real infrastructure, and Tier 3 E2E tests for complete user flows. Most projects benefit from using all three tiers together.

What happens if I use LocalRuntime inside Docker?▼

Using LocalRuntime in Docker causes hangs because of its threading model. Docker, FastAPI, and Kubernetes deployments require AsyncLocalRuntime, which uses async/await without threads.