# langchain_agentx

`langchain_agentx` 是一组基于 LangChain / LangGraph 的“代码智能体”工具函数，帮助你在自己的项目里快速集成：

- OpenCode 风格的 LangGraph Agent（代码理解、重构、分析）
- DeepAgent 兼容的 Agent 工厂
- 上下文感知中间件、性能监控等基础设施

## 安装

发布到 PyPI 后，你可以直接通过 pip 安装：

```bash
pip install langchain-agentx
```

## 快速上手

```python
from langchain_agentx import create_opencode_style_agent, create_opencode_style_deepagent

# 这里省略 LangChain / LangGraph 相关模型与工具配置
agent = create_opencode_style_agent(...)
deep_agent = create_opencode_style_deepagent(...)
```

具体的能力和使用方式可以参考源码中的 docstring 以及各模块下的 `README.md`。

## 发布新版本流程（备忘）

> 以下命令默认在项目根目录（`c:\git_code\langchain_agentx`）并已激活 `kw_venv`。

### 1. 准备代码与版本号

- **修改版本号**：编辑 `pyproject.toml`：
  - 把 `[project]` 里的 `version = "0.x.y"` 改成新版本（例如 `0.2.0`）。
- **确认工作区干净**：
  - 运行 `git status`，确认只有本次要发版的变更。

### 2. 安装构建与发布工具

只需偶尔执行一次（环境更新或新机器时）：

```bash
python -m pip install -U build twine
```

### 3. 本地构建分发包

在项目根目录执行：

```bash
python -m build
```

构建成功后会生成：

- `dist/langchain_agentx-<version>.tar.gz`
- `dist/langchain_agentx-<version>-py3-none-any.whl`

### 4. 上传到 TestPyPI（可选，推荐先试）

1. 在浏览器里登录 `https://test.pypi.org/`，创建/获取 API token。
2. 在本机用户目录创建/编辑 `~/.pypirc`：

```ini
[distutils]
index-servers =
    testpypi

[testpypi]
  username = __token__
  password = pypi-xxxxxxxxxxxxxxxxxxxx
```

3. 运行上传命令：

```bash
python -m twine upload --repository testpypi dist/*
```

4. 在一个**干净的虚拟环境**里测试安装：

```bash
python -m pip install -i https://test.pypi.org/simple/ langchain-agentx==<version>
```

### 5. 上传到正式 PyPI

1. 在浏览器里登录 `https://pypi.org/`，创建/获取 API token。
2. 在 `~/.pypirc` 中增加正式仓库配置（若尚未配置）：

```ini
[distutils]
index-servers =
    pypi
    testpypi

[pypi]
  username = __token__
  password = pypi-xxxxxxxxxxxxxxxxxxxx

[testpypi]
  username = __token__
  password = pypi-xxxxxxxxxxxxxxxxxxxx
```

3. 上传到 PyPI：

```bash
python -m twine upload dist/*
```

### 6. 打 Tag 并推送（可选但推荐）

```bash
git add .
git commit -m "release: langchain-agentx <version>"
git tag v<version>
git push
git push --tags
```

下次发布时按本节从上到下依次执行即可。***
