45 Commits

Author SHA1 Message Date
Lauren Hirata Singh e64690f7ff docs(langsmith): group v2 endpoints by resource with standardized titles (#4935)
## Why

The LangSmith Platform OpenAPI spec mixes v1 and v2 endpoints in one
file, and the backend already tags v2 operations by resource (`runs`,
`datasets`, `threads`). This reworks how the reference presents them so
a v2 endpoint sits with its v1 sibling and is easy to spot, and cleans
up inconsistent endpoint titles across the whole reference.

All changes are driven by `scripts/process_langsmith_openapi.py` (which
runs on every spec sync), so they re-derive automatically and need no
manual upkeep.

## What changed

- **Group v2 by resource.** Stop collecting v2 endpoints in a separate
bucket; let their backend resource tags place them alongside v1 (e.g.
runs → Tracing), each marked `(v2)`.
- **Match v1/v2 wording.** Paired endpoints now read identically via
canonical-title overrides: "Query runs" / "Query runs (v2)", "Read run"
/ "Read run (v2)", "Share run" / "Share run (v2)".
- **Sentence-case every title,** preserving an acronym/proper-noun
allowlist (`API`, `AWS`, `SCIM`, `TTL`, `OAuth2`, `URL`, `WebSocket`,
…).
- **Normalize markers:** `[Beta] X` becomes `X (Beta)`, and trailing `X
V2` becomes `X (v2)`.
- **Threads** moved into its own group.

## Relationship to `main`

This **supersedes the earlier "v2 endpoints" bucket approach** already
on main — an intentional flip to resource-based grouping after reviewing
how v2 actually spreads across resources.

## Please review carefully

- **`V2_TITLE_OVERRIDES`** in the script — the three canonical titles
are explicit, because the v1/v2 equivalence is semantic and even crosses
HTTP methods (POST "Share a run" ≈ PUT "Share Run"), so it cannot be
auto-inferred. New matching pairs get added here.
- **`TITLE_PRESERVE`** acronym allowlist — anything missing gets
lowercased; anything wrong gets over-preserved.
- The large `langsmith-platform-openapi.json` diff is fully generated
output; the script is the source of truth.

## Known limitation

Within a resource group the v2 endpoints cluster together rather than
each sitting directly beside its v1 twin. Mintlify sorts endpoints
within a group by path, which cannot be overridden through the spec.
Literal adjacency would require script-generated navigation, deferred by
decision.

## AI involvement

Authored with Claude Code (investigation, script changes, and spec
regeneration); reviewed by @lnhsingh.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-17 11:20:04 -04:00
Lauren Hirata Singh 895cdc2706 docs(langsmith): surface v2 endpoints and rename REST API reference (#4916)
The LangSmith Platform OpenAPI spec mixes v1 and v2 endpoints in one
file. Surface the newer v2 endpoints (runs, traces, threads, datasets,
public share) in a dedicated "New v2 endpoints" sidebar group so readers
notice them, and rename the reference group to "LangSmith REST API".

https://langchain.slack.com/archives/C0ACCE0N6F5/p1783520873705849

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-16 08:35:46 -04:00
Quentin Brosse d726d9b9d0 docs: add Threads SDK methods to SmithDB migration guide (#4847)
## Summary

Adds 3 new v2 SDK methods to the SmithDB migration guide:

- `threads.query`
- `threads.list_traces`
- `threads.stats`

Each gets Python, TypeScript, Go, Java, and cURL before/after examples.
2026-07-15 17:05:12 +02:00
Naomi Pentrel e1b5bd8216 add more code samples tested in deepagents (#4747)
Turning more code samples into testable code samples
2026-07-06 19:21:04 +02:00
Quentin Brosse c38eb48bfc docs(langsmith): SmithDB SDK migration guide for runs query and retrieve (#4614)
## Summary

Adds an unlisted migration guide at `/langsmith/smithdb-sdk-migration`
for partner customers migrating from v1 SDK methods to SmithDB-backed
equivalents. The page is `noindex: true` and not wired into `docs.json`
nav — accessible via direct URL only.

Each method's content (parameter tables, examples, and their code-sample
imports) lives in its own file under
`src/snippets/langsmith/smithdb-migration/` (e.g. `runs-query.mdx`,
`runs-retrieve.mdx`), included into the main page via Mintlify's
snippet-import pattern. Adding a new method's migration guide only
requires a new snippet file plus one import and one render line in the
main page, so different teams can add methods in parallel without
conflicting.

The code-samples generation and testing pipeline was extended to support
Go and cURL/bash, alongside existing Python/TypeScript/Java/Kotlin
support, so every code sample in this guide is a real, tested source
file rather than hand-authored prose.

---------

Co-authored-by: Kiewan Villatel <kiewan@langchain.dev>
Co-authored-by: Naomi Pentrel <5212232+npentrel@users.noreply.github.com>
2026-07-06 09:40:48 +02:00
Naomi Pentrel 3c17a487d5 update to use glm5p2 (#4716) 2026-07-03 22:36:48 +02:00
Lauren Hirata Singh 727120b3a4 add banner for AMA (#4689)
https://langchain.slack.com/archives/D0BD312ET0B/p1782940666347689
2026-07-01 17:46:28 -04:00
Lauren Hirata Singh e23c114038 Add weekly changelog assembler and coverage audit (#4573)
## Why
Tooling for the fragment-based Cloud/Fleet changelog: generate the
weekly entry from `.changelog` fragments, and guarantee no user-facing
PR slips through.

## What
- `scripts/assemble_changelog.py`: reads langchainplus `.changelog`
fragments, filters by surface and readiness, resolves Eppo flag rollout
(held → ready once a flag is fully rolled out), and renders the Mintlify
`<Update>` block. Verified against the live Eppo API.
- `scripts/audit_changelog_coverage.py`: lists merged langchainplus PRs
over a contiguous, weekend-inclusive window and flags any user-facing
`feat`/`fix` with no fragment. Sub-windows queries to avoid the gh
1000-result cap.
- `scripts/changelog_audit_ignore.txt`: dispositioned (not-user-facing)
PRs the audit skips.

Read-only against the Eppo API and `gh`; `EPPO_API_KEY` is read from the
environment / the docs repo Actions secret.

Drafted with assistance from Claude Code.

---------

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-23 13:59:16 -04:00
Naomi Pentrel cbe6dd3b41 update code sample test reporting (#4581) 2026-06-23 19:50:22 +02:00
Mason Daugherty a88ab7a0f7 docs(deepagents): use GLM-5.2 in code examples (#4568)
Replaces the `baseten:zai-org/GLM-5` model used in documentation
examples with `baseten:zai-org/GLM-5.2`. This updates the code-snippet
generator's Baseten tab token (so future regeneration stays consistent),
the already-generated `src/snippets/code-samples/*.mdx`, hand-authored
examples under `src/oss/`, and the GLM-5/GLM-5.1 references on the Deep
Agents models page. Benchmark matrices
(`deepagents-eval-category-matrix.mdx`,
`refresh_deepagents_category_matrix.py`) and the self-hosted changelog
are intentionally left untouched since they record factual data.

Made by [Open
SWE](https://openswe.vercel.app/agents/47bd1250-8806-5acc-2a2f-ec8497332af0)

---------

Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com>
2026-06-22 14:14:10 -04:00
Daniel Kneipp 171aa6d98f Add docs mise and pre-commit config (#4329) 2026-06-18 14:40:19 +02:00
Lauren Hirata Singh aa28d0f6f0 hide fleet api endpoints (#4145)
https://langchain.slack.com/archives/C04GMBZ9Y1Y/p1779400010849349
2026-05-22 15:29:38 -04:00
Lauren Hirata Singh 7a8607fe4f add LangSmith API docs to mintlify (#3593)
Fixes DOC-878

```
There are 84 hidden endpoints across these categories:                                         
  ┌─────────────────────────────────┬───────┬───────────────────────────────────┐                
  │            Category             │ Count │            Why hidden             │                
  ├─────────────────────────────────┼───────┼───────────────────────────────────┤                
  │ Fleet (agents, skills, fleet *) │ 72    │ Fleet has its own product/docs    │                
  ├─────────────────────────────────┼───────┼───────────────────────────────────┤                
  │ fleet github-app                │ 11    │ Fleet-specific GitHub integration │                
  ├─────────────────────────────────┼───────┼───────────────────────────────────┤                
  │ beacon                          │ 1     │ Internal usage telemetry          │                
  ├─────────────────────────────────┼───────┼───────────────────────────────────┤                
  │ nps                             │ 1     │ Internal NPS survey               │                
  ├─────────────────────────────────┼───────┼───────────────────────────────────┤                
  │ sandboxes-internal              │ 1     │ Service-to-service only           │                
  ├─────────────────────────────────┼───────┼───────────────────────────────────┤                
  │ metrics                         │ 1     │ Internal queue metrics            │                
  ├─────────────────────────────────┼───────┼───────────────────────────────────┤              
  │ (untagged) — GET /ok            │ 1     │ Health check                      │              
  └─────────────────────────────────┴───────┴───────────────────────────────────┘  
  ```
  
 PREVIEW: https://langchain-5e9cc07a-preview-lsapi-1779323176-451247e.mintlify.app/langsmith/smith-api-ref
2026-05-21 17:40:17 -04:00
open-swe[bot] e54f1f297f docs(deepagents): update default model to gemini-3.5-flash (#4096) 2026-05-20 11:16:56 -04:00
Mason Daugherty 758487a454 chore(oss): add Overall score column and suppress zero scores in eval matrix (#4066)
Two improvements to the Deep Agents eval matrix generator. Zero scores
(a known CI artifact for models that fail entirely, like
`openrouter:deepseek/deepseek-v4-pro`) now render as `—` instead of
`0%`. The top-level `correctness` field from `evals_summary.json` — the
aggregate score across all eval tasks — is extracted as a new
**Overall** column, inserted immediately after the Model column so it's
the first thing readers see.

## Changes

- `_fmt_pct` now treats `v <= 0` as missing, rendering `—` instead of
`0%` for zero scores
- `_merge_rows` captures `rep["correctness"]` (a 0..1 float) per model
under an `OVERALL_KEY` sentinel, using the same first-seen-wins logic as
category scores
- `build_fragment` prepends `OVERALL_KEY`/`"Overall"` to the
`cat_keys`/`display_headers` passed to `_table_markdown`, making it
participate in column-max bolding automatically
- Regenerated snippet reflects both changes:
`openrouter:deepseek/deepseek-v4-pro` row removed (all-zero scores now
suppressed), Overall column added to all remaining rows
2026-05-19 00:10:26 -05:00
Mason Daugherty 540540ad4e chore(oss): add INCLUDED_MODELS allowlist to Deep Agents eval matrix script (#4065) 2026-05-18 23:10:41 -05:00
open-swe[bot] 92565459e3 feat: add java traceable docs [closes DOC-1050] (#3802) 2026-05-06 20:19:39 +02:00
open-swe[bot] 74c3c110c7 docs: port deepagents permissions docs to javascript (#3856) 2026-05-05 15:15:24 +02:00
Naomi Pentrel e1a9814a16 update signatures (#3720) 2026-04-24 22:49:33 +02:00
Naomi Pentrel 1e25f1ee27 get model leaderboard info into docs (#3715) 2026-04-24 21:32:54 +02:00
Naomi Pentrel c627f053bd update snippet logic (#3708) 2026-04-24 12:49:46 +02:00
Naomi Pentrel 1972ed8c99 add auto sync script for create_deep_agent (#3706) 2026-04-24 12:34:07 +02:00
Naomi Pentrel cfd6391a6b democratize providers (#3669) 2026-04-22 17:22:26 +02:00
Naomi Pentrel 7f8707b7fb create deep research tutorial (#3193) 2026-03-23 19:00:56 +01:00
Naomi Pentrel fb79c64ed1 feat: improve long-term memory docs and discoverability (#2957) 2026-03-18 16:28:59 +01:00
Mason Daugherty e0d7bb27e9 feat: add CI check for unresolved @[ref] cross-references (#3051)
## Description
Adds a check that validates all `@[ref]` cross-references in source
MDX/MD files resolve against entries in `link_map.py`. Previously,
unresolved references silently passed through the build pipeline and
appeared as raw `@[ClassName]` text in the published docs. Available via
`make check-cross-refs`.

Note: I couldn't modify `.github/workflows/_check-links.yml` due to
workflow permissions. To integrate into CI, add this step to
`_check-links.yml` after "Install Python dependencies":
```yaml
- name: Check for unresolved cross-references
  run: make check-cross-refs
```

## Test Plan
- [ ] `make check-cross-refs` reports unresolved references with file,
line number, and scope
- [ ] 12 unit tests covering: valid refs, unresolved refs, scope fences,
code block skipping, escaped refs, titled refs, backtick refs, and
code-samples exclusion

---------

Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com>
Co-authored-by: Naomi Pentrel <5212232+npentrel@users.noreply.github.com>
2026-03-13 17:35:55 -04:00
Mason Daugherty ae12b17d07 cleanup build logs (#3118) 2026-03-13 17:10:12 -04:00
Mason Daugherty c57ece47ff delete reference/ (#3109)
delete folder

relocate `packages.yml` and update corresponding scripts
2026-03-13 15:08:14 -04:00
Naomi Pentrel 5c5f9df949 ignore orphaned pages (#3071) 2026-03-11 20:20:34 +01:00
Naomi Pentrel 8a38612ed2 ensure pages in docs.json exist (#3058) 2026-03-11 20:10:59 +01:00
Naomi Pentrel 03b9eb1038 feat: rename text_embedding to embeddings integrations path [closes DOC-851] (#3035)
## Description
Renames the integrations documentation path from
`oss/integrations/text_embedding` to `oss/integrations/embeddings` to
accommodate that embeddings are no longer strictly text-only. Adds
wildcard redirects so all old `text_embedding` URLs automatically
redirect to the new `embeddings` paths.

Resolves DOC-851

## Test Plan
- [ ] Verify `/oss/python/integrations/embeddings/` and
`/oss/javascript/integrations/embeddings/` pages render correctly
- [ ] Verify old URLs like `/oss/integrations/text_embedding/openai`
redirect to `/oss/integrations/embeddings/openai`
- [ ] Verify internal links from provider, vectorstore, and guide pages
point to the new embeddings paths

---------

Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com>
2026-03-10 17:57:00 -04:00
Naomi Pentrel f7dedf49a2 feat: add streaming thinking/reasoning tokens example (#2936) 2026-03-06 12:38:43 +01:00
Naomi Pentrel 09916e89b6 automate tests (#2893) 2026-03-04 16:31:52 +01:00
Naomi Pentrel 116b87f54b add action to fail on missing redirects (#2593) 2026-02-11 15:19:55 +01:00
Mason Daugherty 1f16946e54 fix(ci): only flag langchain_core imports for symbols actually re-exported by langchain (#2503)
Fixes false positives in the import checker where symbols like
`BaseMessage` were flagged despite not being re-exported by `langchain`.

The module-level mapping (`langchain_core.messages` ->
`langchain.messages`) caused all imports from that module to be flagged.

Now each imported symbol is verified against the symbol-level mappings
before flagging.
2026-02-05 15:47:08 -05:00
Mason Daugherty a41b25fd3f fix(ci): pkg downloads workflow (#1779) 2025-12-08 00:42:43 -05:00
Lauren Hirata Singh 6cae3ed49b fix broken links + gh action (#1702) 2025-12-02 12:25:13 -05:00
Mason Daugherty 228ff53980 fix(infra): security enhancements (#1610) 2025-11-24 13:01:50 -05:00
Mason Daugherty a54b65ce43 fix(ci): import check regex pattern (#1588) 2025-11-22 17:49:54 -05:00
Mason Daugherty 2745dc5d30 feat(ci): validate imports from langchain (#1445)
Introduces an automated system to detecting and manage incorrect imports
from `langchain_core` in favor of using the re-exports from `langchain`.

* Added `check-import-mappings.yml` workflow to periodically analyze the
latest version of `langchain_core`, check for re-exports in `langchain`
(and generate `import_mappings.json`), and automatically create PRs to
update the mappings cache in this repo.
* Added `check_import_mappings.py` to fetch latest package releases,
introspect `langchain` public `__init__` files, and generate a detailed
mapping of re-exported members from `langchain_core`. Uses the previous
local `import_mappings.json`
* Added `check-pr-imports.yml` workflow to run on PRs, ensuring inbound
contributions use `langchain` imports when available, and comment on PRs
with specific guidance if issues are found.
* Uses `check_pr_imports.py` to analyze PR diffs against the import
mappings, detect incorrect `langchain_core` imports, and output
suggested fixes for contributors.

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-11-22 17:28:42 -05:00
Mason Daugherty 2b7bd4a427 chore: clean up pyproject.toml (#1444) 2025-11-15 21:03:54 -05:00
Mason Daugherty e87474666c chore(infra): move .github/scripts to scripts (#1443) 2025-11-15 20:51:18 -05:00
Kathryn May 68a794b106 WIP Draft nav + sidebar updates for langsmith platform (#651)
This PR updates the docs for LangSmith Platform, folding in LGP.
Specifically:

- Update to tab arrangement.
- Big content changes in Deployments tab (now Agent deployment as well
as Platform infrastructure deployment).
- Changing the name of the Studio feature.
- Overhaul of home page.
- Updates to tab landing pages to follow the same card format
consistently.
- Moving LGP content into the LS directory in the docs.

## Latest preview:


https://langchain-5e9cc07a-preview-langsm-1760109143-df9b7ef.mintlify.app/langsmith/home
2025-10-14 10:21:52 -04:00
Mason Daugherty 7ff16d005f chore: move scripts (#657)
clean up top-level
2025-09-25 22:45:14 -04:00
Lauren Hirata Singh 23dc7f8051 Misc. cleanup / standardization (#425)
# Documentation update

## Overview
<!-- Brief description of what documentation is being added/updated -->
- Updated broken links in all docs that **are not** under
`python/integrations` or `javascript/integrations` (these will be
addressed later)
- Updated broken-links scripts (locally and GH actions) to ignore the
integrations directories
- Changed .md files to .mdx
- Fixed vscode settings
- Added vscode extension suggestions

## Type of change
<!-- Check the relevant box -->
- [ ] New documentation page
- [ ] Update existing documentation
- [x] Fix typo, bug, broken link, or formatting issue
- [ ] Remove outdated content
- [ ] Other (please describe):

## Related issues/PRs
<!-- Link to related issues, feature PRs, or discussions (if applicable)
-->
- GitHub issue:
- Feature PR:

<!-- For LangChain employees, if applicable: -->
- Linear issue:
- Slack thread:

## Checklist
<!-- Check all that apply -->
- [x] I have read the [contributing guidelines](README.md)
- [x] I have tested my changes locally using `docs dev`
- [x] All code examples have been tested and work correctly
- [x] I have used **root relative** paths for internal links
- [x] I have updated navigation in `src/docs.json` if needed
- [x] I have gotten approval from the relevant reviewers
- [x] (Internal team members only / optional) I have created a preview
deployment using the [Create Preview Branch
workflow](https://github.com/langchain-ai/docs/actions/workflows/create-preview-branch.yml)

## Additional notes
<!-- Any other information that would be helpful for reviewers -->
2025-09-09 14:20:55 -04:00