The Connic Composer SDK for building agents and enterprise-level tools.
Project description
Connic Composer SDK
Build Connic agents in code.
Define agents in YAML, extend them with Python, test them with hot reload against Connic cloud, and deploy them to Connic-managed environments.
What It Is
connic-composer-sdk is the Python SDK and CLI for Connic's code-first agent workflow.
Use it to:
- define agents in YAML
- write custom tools as plain Python functions
- add middleware, schemas, sessions, retries, concurrency, and guardrails
- connect MCP servers and use Connic's predefined tools
- validate projects locally before uploading anything
- run hot-reload test sessions in isolated cloud environments
- deploy to Connic from the CLI or through a connected Git repository
Installation
pip install connic-composer-sdk
Requires Python 3.10 or newer.
Quick Start
# Create a new project
connic init my-agents
cd my-agents
# Authenticate this project with Connic
connic login
# Validate the project locally
connic lint
# Start a hot-reload dev session in Connic cloud
connic dev
# Run declarative test suites against an environment
connic test
The default scaffold is intentionally minimal. If you want a starter project with working examples, use templates:
connic init my-agents --templates=invoice,customer-support
Browse available templates at connic.co/agents.
Example Project
my-agents/
├── agents/
│ └── support-assistant.yaml
├── tools/
│ └── billing.py
├── middleware/
│ └── support-assistant.py
├── schemas/
└── requirements.txt
agents/support-assistant.yaml
version: "1.0"
name: support-assistant
type: llm
model: gemini/gemini-2.5-pro
description: "Customer support agent with billing and knowledge access"
system_prompt: |
You are a concise support agent.
Use tools when they help produce a more accurate answer.
tools:
- billing.lookup_invoice
- query_knowledge
session:
key: input.user_id
ttl: 86400
guardrails:
input:
- type: prompt_injection
mode: block
output:
- type: system_prompt_leakage
mode: block
tools/billing.py
def lookup_invoice(invoice_id: str) -> dict:
"""Look up invoice status by invoice ID.
Args:
invoice_id: The invoice identifier
Returns:
Invoice details for the requested invoice
"""
return {
"invoice_id": invoice_id,
"status": "paid",
"amount": 199.0,
"currency": "USD",
}
Run:
connic lint
connic tools
connic test
Core Concepts
Agent Types
See Agent Configuration for the full YAML reference.
llm: an LLM-driven agent with prompts, tools, MCP servers, schemas, and guardrailstool: a direct wrapper around a Python toolsequential: a pipeline that executes multiple agents in order
Tools
Custom tools are plain Python functions discovered from tools/, including nested modules. Type hints and docstrings are used to generate tool schemas automatically. See Writing Tools for details.
The SDK also exposes predefined Connic tools such as the ones documented in Predefined Tools:
trigger_agenttrigger_agent_atquery_knowledgestore_knowledgedelete_knowledgekb_list_namespacesweb_searchweb_read_pagedb_finddb_insertdb_updatedb_deletedb_countdb_list_collections
Middleware and Runtime Controls
Per-agent middleware lets you modify inputs, enrich context, attach files, stop execution early, and transform outputs. See Middleware.
The YAML model also supports:
- retries
- timeouts
- max iteration limits
- key-based concurrency control
- persistent sessions
- output schemas
- MCP server connections
- input and output guardrails
Related docs:
CLI Commands
| Command | Description |
|---|---|
connic init [name] |
Create a new project scaffold |
connic init [name] --templates=... |
Create a project from one or more starter templates |
connic login |
Save project credentials in .connic |
connic lint |
Validate agents, tools, middleware, and schemas locally |
connic tools |
List discovered tools and signatures |
connic dev [name] |
Start an isolated cloud dev environment with hot reload |
connic test |
Run declarative test suites from tests/ against an environment |
connic deploy |
Deploy from the CLI to a Connic environment for projects without a connected Git repository |
connic migrate |
Migrate a LangChain or Google ADK project into a Connic project |
Run connic <command> --help for flags and examples.
Development Workflow
Local Validation
connic lint loads your project locally and catches issues like:
- invalid YAML
- missing required agent fields
- unresolved tool references
- duplicate agent names
- schema and middleware loading problems
Hot-Reload Testing
connic dev creates an isolated development environment in Connic cloud, uploads your local files, and re-syncs changes in a few seconds while you iterate.
This is the main development loop when you need real connectors, predefined tools, and environment-scoped services.
Use connic test for one-shot declarative test suites from tests/, including CI runs and deploy-gate parity.
Deployment
Deployment targets Connic-managed environments.
- If your Connic project is connected to a Git repository, pushing to the configured branch is the primary deployment flow.
connic deployis available for CLI-driven deployments and for projects that do not use a connected repository.
Documentation
| Topic | Link |
|---|---|
| Overview | connic.co/docs/v1/composer/overview |
| Quickstart | connic.co/docs/v1/quickstart |
| Agent Configuration | connic.co/docs/v1/composer/agent-configuration |
| Writing Tools | connic.co/docs/v1/composer/write-tools |
| Middleware | connic.co/docs/v1/composer/middleware |
| Predefined Tools | connic.co/docs/v1/composer/predefined-tools |
| MCP | connic.co/docs/v1/composer/mcp |
| Testing | connic.co/docs/v1/composer/testing |
| Variables | connic.co/docs/v1/composer/variables |
| Guardrails | connic.co/docs/v1/composer/guardrails |
| Knowledge Tools | connic.co/docs/v1/composer/knowledge-tools |
| Database Tools | connic.co/docs/v1/composer/database-tools |
Contributing
See CONTRIBUTING.md.
Support
License
MIT. See LICENSE.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file connic_composer_sdk-0.1.18.tar.gz.
File metadata
- Download URL: connic_composer_sdk-0.1.18.tar.gz
- Upload date:
- Size: 65.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3ce27ad901f42744cc638cf00465618c6784acbe9b043194de67e85c7dc130c4
|
|
| MD5 |
2a961968654f4f6d7314538e7f639c75
|
|
| BLAKE2b-256 |
ee9722fdf89ba1aec78bfd30858c69bbd66f8ef9aee4caf4bb88164449d552af
|
Provenance
The following attestation bundles were made for connic_composer_sdk-0.1.18.tar.gz:
Publisher:
publish.yml on connic-org/connic-composer-sdk
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
connic_composer_sdk-0.1.18.tar.gz -
Subject digest:
3ce27ad901f42744cc638cf00465618c6784acbe9b043194de67e85c7dc130c4 - Sigstore transparency entry: 1478808165
- Sigstore integration time:
-
Permalink:
connic-org/connic-composer-sdk@5ad4c4c6407331c747ab307fcbaa7a1a682276fe -
Branch / Tag:
refs/heads/main - Owner: https://github.com/connic-org
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5ad4c4c6407331c747ab307fcbaa7a1a682276fe -
Trigger Event:
push
-
Statement type:
File details
Details for the file connic_composer_sdk-0.1.18-py3-none-any.whl.
File metadata
- Download URL: connic_composer_sdk-0.1.18-py3-none-any.whl
- Upload date:
- Size: 66.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
59e66806364c8c2301a48acf7fc9d75d1b12d36678f7b72f8d131b59e895e280
|
|
| MD5 |
3e53242d6582f94335002175f09ee8d0
|
|
| BLAKE2b-256 |
05fe3d3fa97ec84dfdb7971896d9cb7036ffec4191a76bb562f870b4496895a6
|
Provenance
The following attestation bundles were made for connic_composer_sdk-0.1.18-py3-none-any.whl:
Publisher:
publish.yml on connic-org/connic-composer-sdk
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
connic_composer_sdk-0.1.18-py3-none-any.whl -
Subject digest:
59e66806364c8c2301a48acf7fc9d75d1b12d36678f7b72f8d131b59e895e280 - Sigstore transparency entry: 1478808263
- Sigstore integration time:
-
Permalink:
connic-org/connic-composer-sdk@5ad4c4c6407331c747ab307fcbaa7a1a682276fe -
Branch / Tag:
refs/heads/main - Owner: https://github.com/connic-org
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@5ad4c4c6407331c747ab307fcbaa7a1a682276fe -
Trigger Event:
push
-
Statement type: