Skip to main content

Synara reusable CLI tool

Project description

Synara Framework: AI Agent Prompts & Architecture

License: Apache 2.0 Python Version Status

This project defines and implements the Synara Framework, a robust architecture for orchestrating autonomous Multi-Agent systems using a strict Prompt-as-Code philosophy. This framework controls behavior, optimizes context windows, and raises the reliability of AI Agents throughout the software development lifecycle by decoupling agent intelligence from rigid execution logic.


📖 Documentation Hub

The Synara Framework documentation is now hosted on our interactive platform for easier navigation:

  • 🚀 Introduction to Synara: Overview of the framework, limits, and Prompt-as-Code philosophy.
  • 🏛️ 13-Layer System Architecture: Detailed breakdown of the runtime execution layers and directories.
  • 🔄 Operational Workflow: Interactive React Flow diagrams showing multi-agent pipelines and delegations.
  • ⚙️ Configuration Guide: Explains the synara.config.json schema, including AI memory constraints and Quota Fallback logic.
  • 💻 CLI Reference: Documentation for the synara-ai CLI, templates, and command options.

🚀 Installation

Synara provides a standalone CLI (synara-ai) that should be installed per-project within a virtual environment.

# Requires Python >= 3.10
cd my-project
python3 -m venv .venv
source .venv/bin/activate
pip install synara-ai

⚡ Core Principles

The Synara system operates on four main technical pillars:

  1. Prompt-as-Code: Agent intelligence, behavior, and roles must be defined explicitly in Markdown files with YAML frontmatter (.synara/agents/*.md), completely decoupled from Python execution code.
  2. Context Engineering: Deliver exactly what the agent needs through a Context Pack (intentional context compression), rather than stuffing the entire codebase. This prevents the AI from hallucinating.
  3. No Vibes Allowed: Force the AI to perform structured, step-by-step planning and reasoning before writing any code.
  4. Anti-Slop: Constraint the output format via an Output Contract, automatically rejecting wordy or redundant responses and preventing unrelated logic changes.

📜 Prompt-as-Code Architecture

Synara strictly enforces that all Agent definitions must live in Markdown files, not hardcoded in Python. This guarantees modularity, easy maintenance, and protects the system from architectural regression.

Dynamic Agent Loading

When an agent is requested, the system uses the markdown_loader.py module to dynamically parse the Markdown files located in .synara/agents/*.md.

Each file must contain a YAML Frontmatter block:

---
name: code-reviewer
description: Expert code reviewer specializing in SOLID principles and clean architecture.
model: models/gemini-3.1-pro-high
tools:
  - view_file
  - run_command
---

The content below the frontmatter serves as the Agent's specific System Prompt.

AST Guardrails

To prevent future developers or AI systems from regressing into a hardcoded architecture, the project utilizes strict AST (Abstract Syntax Tree) unit tests (tests/test_architecture_guardrails.py). If any large string constant (prompt) is detected directly inside the Python agent controllers, the CI pipeline will instantly fail.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

synara_ai-0.1.3.tar.gz (73.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

synara_ai-0.1.3-py3-none-any.whl (89.2 kB view details)

Uploaded Python 3

File details

Details for the file synara_ai-0.1.3.tar.gz.

File metadata

  • Download URL: synara_ai-0.1.3.tar.gz
  • Upload date:
  • Size: 73.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for synara_ai-0.1.3.tar.gz
Algorithm Hash digest
SHA256 694d1f229f7d95cb8f21fb4e7c9cf5f6c5b76b3d227656fb46c7118a82a78a36
MD5 6d1e7c017b47da2a8c6ff95f729e926f
BLAKE2b-256 dd6c2988242a6cb5bc5da8c6a728f84f9201a0a18f92ee1d5af911171fd5470b

See more details on using hashes here.

File details

Details for the file synara_ai-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: synara_ai-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 89.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.5

File hashes

Hashes for synara_ai-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 479985f2c72d75d755afd4172c141f18a51959b1a9e40d44edea1f933ee7309d
MD5 5645fa306bbd1d04cad353008daece21
BLAKE2b-256 f0896cbdd361c918107b8622470549b8063857a759f7861c357fcd4378d9bf40

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page