Skip to content

Commit 682b79d

Browse files
authored
Merge pull request #4 from runcycles/chore/readme-seo
chore(release): cut v0.1.1 — README SEO alignment + version bump
2 parents 1027cf9 + 3afa695 commit 682b79d

3 files changed

Lines changed: 22 additions & 7 deletions

File tree

CHANGELOG.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,16 @@ All notable changes to this project will be documented in this file.
55
The format is based on [Keep a Changelog 1.1.0](https://keepachangelog.com/en/1.1.0/),
66
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
77

8+
## [0.1.1] - 2026-05-10
9+
10+
Discovery / SEO refresh. No code changes; metadata-only release that aligns the package's PyPI listing and README with the parent SDK (`cycles-client-python`) for category-search and ecosystem discovery.
11+
12+
### Changed
13+
14+
- `pyproject.toml`: rewrote `description` to append "using create_agent"; expanded `keywords` from 17 to 21 (added `agent-safety`, `llm-cost`, `llmops`, `action-control`, `mcp` matching the parent SDK's v0.4.1 SEO refresh); repointed `Documentation` URL off the placeholder onto the GitHub README anchor. (#3)
15+
- `README.md`: aligned badges (3 → 5, added PyPI Downloads + Coverage), H1 title (now `LangChain Runcycles — AI agent middleware for budget and action authority`), and bolded keyword-dense hook with the cadence used by `cycles-client-python` and `cycles-client-typescript` so the GitHub social card, search snippets, and PyPI page lead with the same category-search keywords. (#4)
16+
- GitHub repo metadata (description, homepage, 20 topics) was set out-of-band via `gh repo edit` to match the topic set the sibling SDKs use, plus LangChain-specific topics (`langchain`, `langgraph`, `agent-middleware`).
17+
818
## [0.1.0] - 2026-05-10
919

1020
Initial public release. First-class LangChain agent middleware integration for Cycles, exposing pre-tool-call authorization and fan-out enforcement on top of the `runcycles` SDK.
@@ -17,4 +27,5 @@ Initial public release. First-class LangChain agent middleware integration for C
1727
- Examples: `tenant_budget_agent.py` (tenant cap + risky-tool denial) and `multi_agent_fanout.py` (multi-agent / HITL flow).
1828
- `AUDIT.md` documenting LangChain middleware API conformance (hooks, ToolMessage shape, jump_to semantics, SDK methods consumed).
1929

30+
[0.1.1]: https://github.com/runcycles/langchain-runcycles/compare/v0.1.0...v0.1.1
2031
[0.1.0]: https://github.com/runcycles/langchain-runcycles/releases/tag/v0.1.0

README.md

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,16 @@
1-
# langchain-runcycles
1+
[![PyPI](https://img.shields.io/pypi/v/langchain-runcycles)](https://pypi.org/project/langchain-runcycles/)
2+
[![PyPI Downloads](https://img.shields.io/pypi/dm/langchain-runcycles)](https://pypi.org/project/langchain-runcycles/)
3+
[![CI](https://github.com/runcycles/langchain-runcycles/actions/workflows/ci.yml/badge.svg)](https://github.com/runcycles/langchain-runcycles/actions)
4+
[![License](https://img.shields.io/badge/license-Apache%202.0-blue)](LICENSE)
5+
[![Coverage](https://img.shields.io/badge/coverage-99%25-brightgreen)](https://github.com/runcycles/langchain-runcycles/actions)
26

3-
[![PyPI](https://img.shields.io/pypi/v/langchain-runcycles.svg)](https://pypi.org/project/langchain-runcycles/)
4-
[![CI](https://github.com/runcycles/langchain-runcycles/actions/workflows/ci.yml/badge.svg)](https://github.com/runcycles/langchain-runcycles/actions/workflows/ci.yml)
5-
[![License: Apache-2.0](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](LICENSE)
7+
# LangChain Runcycles — AI agent middleware for budget and action authority
68

7-
LangChain agent middleware for [Cycles](https://runcycles.io) — pre-tool-call authorization, fan-out caps, and per-tenant budget enforcement for Python agents.
9+
**LangChain agent middleware for AI agent governance — enforce cost limits, tool permissions, and multi-tenant policies in `create_agent` workflows before LLM calls or tool actions execute.** Works with LangGraph, LangSmith, OpenAI, Anthropic, MCP servers, and any LangChain 1.x agent runtime — built on the new [`AgentMiddleware`](https://docs.langchain.com/oss/python/langchain/middleware/) API (`wrap_tool_call`, `before_model`, `wrap_model_call`).
810

9-
This package exposes two `AgentMiddleware` subclasses that gate agent behavior at runtime against an external Cycles policy/budget service:
11+
`AgentMiddleware` subclasses for the [Cycles Protocol](https://github.com/runcycles/cycles-protocol): gate every tool call with `wrap_tool_call`, cap model fan-out with `before_model` + `jump_to: "end"`, reserve and commit budget per call — with sync and async support, typed configuration, and optional remote policy decisions. Install via `pip install langchain-runcycles`.
12+
13+
## What's in the box
1014

1115
- **`CyclesToolGate`** — runs before every tool call. Authorizes via `client.decide()` and/or reserves budget via `client.create_reservation()`. Returns a `ToolMessage` on denial so the model can recover gracefully.
1216
- **`CyclesFanOutGate`** — runs before every model turn. Halts the agent (with `jump_to: "end"`) when a turn cap is hit or when an external policy says to stop. Useful for runaway-loop protection and per-tenant burst caps.

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ build-backend = "hatchling.build"
44

55
[project]
66
name = "langchain-runcycles"
7-
version = "0.1.0"
7+
version = "0.1.1"
88
description = "LangChain agent middleware for Cycles — pre-tool-call authorization, fan-out caps, and per-tenant budget enforcement for Python agents using create_agent."
99
readme = "README.md"
1010
license = "Apache-2.0"

0 commit comments

Comments
 (0)