A plugin framework for agents, built on LangGraph deepagents + langgraph-cli.
Project description
easy-agentic
一个面向 Agent 的 plugin(插件)框架:为构建在 LangGraph deepagents + langgraph-cli 之上的 Agent 提供统一的扩展注入机制,所有扩展(agent / tool / skill / filesystem / middleware / model …)都通过 plugin 接入。
它不是业务 Agent,也不实现运行时或服务容器——这些分别交给 deepagents 与 langgraph-cli。 详细定位与设计见 doc/requirement.md 与 doc/architecture.md。
技术栈
- Python 3.12(由 uv 锁定)
- 包 / 环境管理:uv
- Agent 运行时:deepagents;服务/接口:langgraph-cli(agent server)
- LLM 方向:Claude(
langchain-anthropic)
快速开始
# 1. 安装 uv(如未安装)
curl -LsSf https://astral.sh/uv/install.sh | sh
# 2. 同步依赖(按 uv.lock 装齐到 .venv)
uv sync
# 3. 配置环境变量:复制 .env 模板并填入 API key 等
# (.env 已被 git 忽略,切勿提交真实密钥)
# 4. 启动本地 agent server(LangGraph Studio)
uv run langgraph dev
# 默认 http://127.0.0.1:2024
uv 使用方式
uv 一个工具搞定 Python 版本 + 虚拟环境 + 依赖 + 运行:读 pyproject.toml(声明的依赖)→ 解析出 uv.lock(锁定精确版本)→ 同步进 .venv。日常不需要手动激活虚拟环境,用 uv run 即可。
最常用的命令
| 命令 | 作用 | 何时用 |
|---|---|---|
uv add <包> |
加运行时依赖(自动写入 pyproject 并安装) | 要用某个库时(别手改 pyproject) |
uv add --dev <包> |
加开发依赖(pytest、ruff 等) | 仅开发/测试用的工具 |
uv remove <包> |
移除依赖 | 不再需要时 |
uv run <命令> |
在项目环境里执行命令 | 跑一切:uv run pytest、uv run langgraph dev |
uv sync |
让 .venv 与 uv.lock 对齐 |
拉取代码 / 切换环境后一键装齐 |
90% 的时间只会用到
uv add和uv run。
关键认知
- 依赖只通过
uv add管理,不要手动编辑pyproject.toml的dependencies;精确版本锁在uv.lock(纳入版本控制)。 uv run会在执行前隐式同步环境,所以加完依赖可直接uv run,无需先uv sync。- 不用
pip install、不用source .venv/bin/activate——uv 自动为子进程准备好环境。 - Python 版本由
.python-version锁定为 3.12,uv 自动选用对应解释器。
uv run 的内部机制(简述)
uv run X ≈ 「确保环境与 lock 一致」+「临时激活 .venv」+「执行 X」。其中 X 最终落到 .venv/bin/ 下绑定了本项目解释器的可执行文件:
uv run pytest→ 执行.venv/bin/pytest(安装时生成的入口脚本,shebang 指向项目.venv的 python)uv run python foo.py→ 用.venv/bin/python跑foo.py
常用开关:--no-sync(跳过同步)、--frozen(不重解析)、--locked(要求 lock 已最新,适合 CI)。
常用开发命令
uv run langgraph dev # 启动本地 agent server(总入口 graph: easy_agentic.graph:main)
uv run pytest # 跑测试
uv add <包> / uv add --dev <包> # 增加依赖
uv sync # 同步环境
项目文档
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 easy_agentic-0.1.0.tar.gz.
File metadata
- Download URL: easy_agentic-0.1.0.tar.gz
- Upload date:
- Size: 18.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
2191163eaa12373228a1907da5378fbeb89368ac83414f15645927ccbf4ba2d9
|
|
| MD5 |
0c74c0960de741b9ce630b50f3a8677b
|
|
| BLAKE2b-256 |
03f93904001cfeb4758cecaf85d3d1e00868964ca8cbc9e78091f8fa42983f42
|
File details
Details for the file easy_agentic-0.1.0-py3-none-any.whl.
File metadata
- Download URL: easy_agentic-0.1.0-py3-none-any.whl
- Upload date:
- Size: 25.3 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: uv/0.11.21 {"installer":{"name":"uv","version":"0.11.21","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"26.04","id":"resolute","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
208d12aea015e322f8ef11534ad044836d11a9d280c99cab7205b8dc434b85c6
|
|
| MD5 |
22b2b648977bb46f3b7937d26609e424
|
|
| BLAKE2b-256 |
be73c416153bdff6fef61b49d905d3cc1e612dfe57e4015a23073c0c75297ad2
|