## 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>
## Description
Extends `.github/workflows/pr-welcome-comment.yml` with an opt-in
`# auto-request[: @user ...]` marker on `.github/OWNERS` rules so the
workflow can call `requestReviewers` for opted-in owners on matching
PRs.
This is needed because the existing welcome comment only tells authors
who owns the touched docs areas. It does not create a GitHub review
request, and the owner handles in that comment are formatted as code, so
they are not reliable mention notifications. The new marker creates an
actual requested reviewer entry while keeping the behavior opt-in per
OWNERS rule.
Wires up `@mdrxy` for `/src/oss/deepagents/cli/`.
## Release Note
none
## Test Plan
- [ ] After merge, open a non-draft PR touching a file under
`src/oss/deepagents/cli/` from a non-owner account and confirm
`@mdrxy` is auto-requested as a reviewer, and `@npentrel` is not.
- [ ] Open an unrelated PR, for example touching `src/langsmith/`, and
confirm no extra reviewers are auto-requested beyond existing
behavior.
The `tag-external-contributions` workflow was incorrectly flagging PRs
authored by the `open-swe` bot as external contributions. Hardcode
`open-swe`, `app/open-swe`, and `open-swe[bot]` as internal authors so
the job skips the org-membership API call and labels them correctly.
## Changes
- Add `internalAuthors` `Set` with `open-swe` variants to the
`github-script` step in
`.github/workflows/tag-external-contributions.yml`
- Short-circuit the external-contributor check before the
`org.getMembershipForUser` call when the PR author matches any of the
hardcoded bot identities
Auto-assigning Docs team reviewers is really noisy, so we are trying out
this GH action that puts the oneous on the PR author to tag one of us
when they are ready for review.
Fix the casing of "PyPI" across docs and integration pages. The Python
Package Index spells it "PyPI" (capital P-y-capital-P-capital-I), but
several pages used "PyPi" instead.
Cache the Mintlify CLI global install in the `_check-links` workflow.
The `npm i -g mint@latest` step and its KaTeX patch are slow — caching
the installed binaries and skipping both steps on cache hit saves a
chunk of wall time on every link-check run.
## Changes
- Add an `actions/cache@v4` step keyed on `runner.os`, Node 22, and a
hash of `_check-links.yml` to cache `/usr/local/lib/node_modules/mint`
and `/usr/local/bin/mint`
- Gate the `Install Mintlify CLI` and `Patch KaTeX __VERSION__ bug`
steps behind `steps.cache-mint.outputs.cache-hit != 'true'`
Add `fetch-depth: 1` to all `actions/checkout@v6` steps across CI
workflows. Full git history isn't needed for any of these jobs — shallow
clones cut checkout time and reduce runner disk/network usage.
Document the `AGENTS.md` file-based approach for defining custom
subagents in the Deep Agents CLI. CLI users can now define subagents as
markdown files with YAML frontmatter instead of writing them in code,
and optionally override the model per subagent for cost control.
## 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>
## Description
Adds Vale terminology rules to enforce correct capitalization of "Deep
Agents". Catches common incorrect variants (`deep agents`, `Deep
agents`, `DeepAgents`, `deepagents`) and suggests the correct form.
Resolves DOC-859
## Test Plan
- [ ] Run `vale --config .vale.ini` against a test file with incorrect
variants to verify all four patterns are caught
---------
Co-authored-by: open-swe[bot] <open-swe@users.noreply.github.com>
Co-authored-by: Lauren Hirata Singh <lauren@langchain.dev>
Completes the `needs-title` issue lifecycle. The existing
`check-default-title` workflow labels issues with default/placeholder
titles, but there was no automated cleanup — labeled issues sat open
indefinitely. This adds a weekly scheduled workflow to close them after
7 days, plus a fix to the existing workflow so the label gets removed
when an author updates their title.
## Changes
- Add `close-needs-title.yml` scheduled workflow (Monday 9 AM UTC +
manual dispatch) that paginates all open issues labeled `needs-title`,
skips PRs and issues younger than 7 days, then comments and closes as
`not_planned`
- Fix the `check-default-title` workflow's early-return path: when a
title is edited to be descriptive, call `issues.removeLabel` to strip
`needs-title` — previously the label stuck around permanently
When an issue or PR title is updated from a default placeholder to
something descriptive, the `needs-title` label was left behind. This
adds cleanup logic so the label is automatically removed once the title
passes validation.
Added repository structure, navigation map, and common workflows to all
four agent instruction files (CLAUDE.md, AGENTS.md, .cursorrules,
.github/copilot-instructions.md) so AI agents can orient in the codebase
without exploring directories or parsing the 88KB docs.json.
Fixes DOC-823
Note: Adding more depth to our dir structure does **not** help agents,
as agents can rely on docs.json and agent nav maps