mirror of
https://github.com/langchain-ai/langchain.git
synced 2026-10-05 01:15:09 +03:00
docs(infra): fix AGENTS.md root setup guidance and package doc accuracy (#40794)
Closes #40793 --- Docs-only repair from a full audit of developer-facing markdown against the repository as source of truth. A new contributor following `AGENTS.md` from the repo root currently hits missing files and commands that cannot run; package docs and a workflow comment also drift from reality. **What was wrong** - `AGENTS.md` listed root-level `pyproject.toml`, `uv.lock`, and `Makefile` as key config files — none exist at the repo root (config is per package under `libs/*/`). - Setup/test/lint examples (`uv sync --all-groups`, `make test` / `lint` / `format`) had no working directory, so they fail if copy-pasted from the root. - The monorepo structure tree omitted `openwiki/` and `AGENTS.md`. - `libs/README.md` omitted the `model-profiles/` package from its directory list. - Root `README.md` linked Deep Agents with `http://` while every other docs link uses `https://`. - The PR-title paragraph claimed scopes are mandatory “with no exceptions”, but `pr_lint.yml` sets `requireScope: false` (only empty `type():` parens are rejected). - Grammar (“require” → “requires”), an unfinished editable-installs sentence, incomplete `pr_lint.yml` scope comment (missing `openrouter`, `typesafe`), and a stale `make help` line pointing at a non-existent top-level Makefile. **What changed** - Clarified per-package config layout and required `cd` into `libs/<package>` before `uv` / `make` commands. - Completed the structure diagram; added `model-profiles/` to `libs/README.md`. - Switched Deep Agents links to `https://`. - Aligned the scope guidance with actual CI behavior (documented, did not change `requireScope`). - Tightened the `pr_lint.yml` comment and removed the dead Makefile help line. No runtime code, tests, or CI logic changed — comments and markdown only. AI assistance was used to prepare this change; I reviewed the diff against the repository layout.
This commit is contained in:
1 parent
49f4b4016b
commit
2dd956b8ad
5 files changed
+17
-12
No files matched your search
@@ -31,7 +31,7 @@
|
||||
# core, langchain, langchain-classic, model-profiles,
|
||||
# standard-tests, text-splitters, docs, anthropic, chroma, deepseek, exa,
|
||||
# fireworks, groq, huggingface, mistralai, nomic, ollama, openai,
|
||||
# perplexity, qdrant, xai, infra, deps, partners
|
||||
# openrouter, perplexity, qdrant, typesafe, xai, infra, deps, partners
|
||||
#
|
||||
# Multiple scopes can be used by separating them with a comma. For example:
|
||||
#
|
||||
|
||||
@@ -29,9 +29,10 @@ langchain/
|
||||
│ │ └── ... (other integrations maintained by the LangChain team)
|
||||
│ ├── text-splitters/ # Document chunking utilities
|
||||
│ ├── standard-tests/ # Shared test suite for integrations
|
||||
│ ├── model-profiles/ # Model configuration profiles
|
||||
│ └── model-profiles/ # Model configuration profiles
|
||||
├── .github/ # CI/CD workflows and templates
|
||||
├── .vscode/ # VSCode IDE standard settings and recommended extensions
|
||||
├── openwiki/ # Generated just-in-time evidence index (optional reading)
|
||||
└── README.md # Information about LangChain
|
||||
```
|
||||
|
||||
@@ -43,14 +44,14 @@ langchain/
|
||||
### Development tools & commands
|
||||
|
||||
- `uv` – Fast Python package installer and resolver (replaces pip/poetry)
|
||||
- `make` – Task runner for common development commands. Feel free to look at the `Makefile` for available commands and usage patterns.
|
||||
- `make` – Task runner for common development commands. Each package under `libs/` has its own `Makefile`; feel free to look at it for available commands and usage patterns.
|
||||
- `ruff` – Fast Python linter and formatter
|
||||
- `mypy` – Static type checking
|
||||
- `pytest` – Testing framework
|
||||
|
||||
This monorepo uses `uv` for dependency management. Local development uses editable installs: `[tool.uv.sources]`
|
||||
This monorepo uses `uv` for dependency management. Local development uses editable installs declared under each package's `[tool.uv.sources]` table in `pyproject.toml`, so path dependencies resolve to your working tree instead of PyPI.
|
||||
|
||||
Each package in `libs/` has its own `pyproject.toml` and `uv.lock`.
|
||||
Each package in `libs/` has its own `pyproject.toml`, `uv.lock`, and `Makefile`. There is no workspace-level `pyproject.toml` or `Makefile` at the repo root — always `cd` into the package you are working on before running the commands below (for example `cd libs/langchain_v1` or `cd libs/core`).
|
||||
|
||||
Before running your tests, set up all packages by running:
|
||||
|
||||
@@ -92,9 +93,13 @@ Use `uv` for all environment and dependency operations in this monorepo. Do not
|
||||
|
||||
#### Key config files
|
||||
|
||||
- pyproject.toml: Main workspace configuration with dependency groups
|
||||
- uv.lock: Locked dependencies for reproducible builds
|
||||
- Makefile: Development tasks
|
||||
There is no single workspace config at the repository root. Configuration lives per package:
|
||||
|
||||
- `libs/<package>/pyproject.toml`: Package metadata and dependency groups (`test`, `lint`, `typing`, `dev`, …)
|
||||
- `libs/<package>/uv.lock`: Locked dependencies for reproducible builds
|
||||
- `libs/<package>/Makefile`: Development tasks for that package (`test`, `lint`, `format`, `type`, …)
|
||||
- `libs/Makefile`: Cross-package `lock` / `check-lock` only
|
||||
- `.pre-commit-config.yaml` (repo root): Git hooks that run per-package format/lint
|
||||
|
||||
#### PR and commit titles
|
||||
|
||||
@@ -364,7 +369,7 @@ When adding a new partner package, update these files:
|
||||
|
||||
## GitHub Actions & Workflows
|
||||
|
||||
This repository require actions to be pinned to a full-length commit SHA. Attempting to use a tag will fail. Use the `gh` cli to query. Verify tags are not annotated tag objects (which would need dereferencing).
|
||||
This repository requires actions to be pinned to a full-length commit SHA. Attempting to use a tag will fail. Use the `gh` cli to query. Verify tags are not annotated tag objects (which would need dereferencing).
|
||||
|
||||
## Additional resources
|
||||
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
LangChain is a framework for building agents and LLM-powered applications. It helps you chain together interoperable components and third-party integrations to simplify AI application development — all while future-proofing decisions as the underlying technology evolves.
|
||||
|
||||
> [!TIP]
|
||||
> Just getting started? Check out **[Deep Agents](http://docs.langchain.com/oss/python/deepagents/)** — a higher-level package built on LangChain for agents that have built-in capabilities for common usage patterns such as planning, subagents, file system usage, and more.
|
||||
> Just getting started? Check out **[Deep Agents](https://docs.langchain.com/oss/python/deepagents/)** — a higher-level package built on LangChain for agents that have built-in capabilities for common usage patterns such as planning, subagents, file system usage, and more.
|
||||
|
||||
## Quickstart
|
||||
|
||||
@@ -50,7 +50,7 @@ For an equivalent JS/TS library, check out [LangChain.js](https://github.com/lan
|
||||
|
||||
While the LangChain framework can be used standalone, it also integrates seamlessly with any LangChain product, giving developers a full suite of tools when building LLM applications.
|
||||
|
||||
- **[Deep Agents](http://docs.langchain.com/oss/python/deepagents/)** — Build agents that can plan, use subagents, and leverage file systems for complex tasks
|
||||
- **[Deep Agents](https://docs.langchain.com/oss/python/deepagents/)** — Build agents that can plan, use subagents, and leverage file systems for complex tasks
|
||||
- **[LangGraph](https://docs.langchain.com/oss/python/langgraph/overview)** — Build agents that can reliably handle complex tasks with our low-level agent orchestration framework
|
||||
- **[Integrations](https://docs.langchain.com/oss/python/integrations/providers/overview)** — Chat & embedding models, tools & toolkits, and more
|
||||
- **[LangSmith](https://www.langchain.com/langsmith)** — Agent evals, observability, and debugging for LLM apps
|
||||
|
||||
@@ -12,6 +12,7 @@ This repository is structured as a monorepo, with various packages located in th
|
||||
core/ # Core primitives and abstractions for langchain
|
||||
langchain/ # langchain-classic
|
||||
langchain_v1/ # langchain
|
||||
model-profiles/ # Model capability profiles and CLI (`langchain-model-profiles`)
|
||||
partners/ # Certain third-party providers integrations (see below)
|
||||
standard-tests/ # Standardized tests for integrations
|
||||
text-splitters/ # Text splitter utilities
|
||||
|
||||
@@ -126,4 +126,3 @@ help:
|
||||
@echo 'extended_tests - run only extended unit tests'
|
||||
@echo 'test_watch - run unit tests in watch mode'
|
||||
@echo 'integration_tests - run integration tests'
|
||||
@echo '-- DOCUMENTATION tasks are from the top-level Makefile --'
|
||||
Reference in new issue
Block a user