agent-spec  by oracle

Agentic systems defined declaratively

Created 6 months ago
315 stars

Top 85.9% on SourcePulse

GitHubView on GitHub
Project Summary

Open Agent Spec (Agent Spec) is a framework-agnostic declarative language designed to define agentic systems, enabling the creation of portable and interoperable agents and multi-agent workflows. It addresses the complexity and framework-specific nature of building agentic systems by providing a standardized specification for agents and structured workflows. This benefits developers by allowing them to define agent behaviors and compositions in a way that can be executed across different agentic frameworks, promoting reusability and reducing development overhead.

How It Works

Agent Spec defines two primary runnable components: standalone Agents (e.g., ReAct-style conversational agents) and Flows (structured, workflow-based processes). These components are described using a declarative language, allowing for serialization and deserialization to formats like JSON or YAML via SDKs, such as the provided PyAgentSpec. Runtimes then translate these Agent Spec configurations into formats executable by specific agentic frameworks. This approach offers a clear separation of concerns and a standardized interface for agent definition, independent of the underlying execution engine.

Quick Start & Requirements

  • Installation: Install the Python package using pip: pip install pyagentspec.
  • Prerequisites: Python 3.10 or newer is required.
  • Dependencies: Requires configuration for specific Large Language Models (LLMs), with examples provided for OCI Gen AI, OpenAI, and Ollama. Adapters for agentic frameworks may introduce additional dependencies.
  • Documentation: Further information on supported LLMs, building agents, and flows can be found in the PyAgentSpec documentation and guides.

Highlighted Details

  • Provides a framework-agnostic declarative language for defining agentic systems.
  • Core components include standalone Agents and structured Flows.
  • Supports serialization/deserialization to JSON/YAML for portability.
  • Includes reference runtime adapters and adapters for popular frameworks like LangGraph, AutoGen, and CrewAI.

Maintenance & Community

Contributions are welcomed from the community, with guidelines provided for submission. Bug reports, questions, and enhancement requests should be directed to GitHub issues. Security vulnerabilities should be reported according to the project's security guide.

Licensing & Compatibility

The project is licensed under either the Apache License 2.0 or the Universal Permissive License (UPL) 1.0, at the user's option. Both licenses are permissive and generally compatible with commercial use and closed-source linking, with the UPL offering explicit patent grants and flexible relicensing terms.

Limitations & Caveats

The provided README does not explicitly detail any limitations, alpha status, or known bugs within the Agent Spec framework or its Python SDK.

Health Check
Last Commit

6 days ago

Responsiveness

Inactive

Pull Requests (30d)
9
Issues (30d)
7
Star History
68 stars in the last 30 days

Explore Similar Projects

Starred by Li Jiang Li Jiang(Coauthor of AutoGen; Engineer at Microsoft), Jared Palmer Jared Palmer(SVP at GitHub; Founder of Turborepo; Author of Formik, TSDX), and
1 more.

copilot-sdk by github

2.3%
8k
AI agentic workflow SDK for application integration
Created 2 months ago
Updated 18 hours ago
Feedback? Help us improve.