diff --git a/apps/web/astro.config.mjs b/apps/web/astro.config.mjs
index fd34be8b1..2f751aeac 100644
--- a/apps/web/astro.config.mjs
+++ b/apps/web/astro.config.mjs
@@ -1,11 +1,27 @@
+import { readFileSync } from 'node:fs';
+import { fileURLToPath } from 'node:url';
import starlight from '@astrojs/starlight';
import { defineConfig } from 'astro/config';
+// Static builds can't redirect an open-ended `/docs/[...slug]` wildcard to
+// v4.42.4 (that requires enumerable paths), so generate one concrete
+// redirect per known v4.42.4 route from its route manifest instead.
+const v4RoutesPath = fileURLToPath(new URL('./src/data/docs-v4.42.4-routes.json', import.meta.url));
+const v4Routes = JSON.parse(readFileSync(v4RoutesPath, 'utf8'));
+const v4Redirects = Object.fromEntries(
+ v4Routes.map((route) => {
+ const bareRoute = route.replace('/docs/v4.42.4/', '/docs/');
+ const from = bareRoute === '/docs/' ? '/docs' : bareRoute.replace(/\/$/, '');
+ return [from, route];
+ }),
+);
+
export default defineConfig({
site: 'https://agentv.dev',
image: { service: { entrypoint: 'astro/assets/services/noop' } },
redirects: {
'/docs/v4': '/docs/v4.42.4/',
+ ...v4Redirects,
},
integrations: [
starlight({
@@ -48,14 +64,14 @@ export default defineConfig({
{ icon: 'github', label: 'GitHub', href: 'https://github.com/EntityProcess/agentv' },
],
sidebar: [
- { label: 'Getting Started', autogenerate: { directory: 'docs/getting-started' } },
- { label: 'Evaluation', autogenerate: { directory: 'docs/evaluation' } },
- { label: 'Graders', autogenerate: { directory: 'docs/graders' } },
- { label: 'Targets', autogenerate: { directory: 'docs/targets' } },
- { label: 'Tools', autogenerate: { directory: 'docs/tools' } },
- { label: 'Guides', autogenerate: { directory: 'docs/guides' } },
- { label: 'Integrations', autogenerate: { directory: 'docs/integrations' } },
- { label: 'Reference', autogenerate: { directory: 'docs/reference' } },
+ { label: 'Getting Started', autogenerate: { directory: 'docs/next/getting-started' } },
+ { label: 'Evaluation', autogenerate: { directory: 'docs/next/evaluation' } },
+ { label: 'Graders', autogenerate: { directory: 'docs/next/graders' } },
+ { label: 'Targets', autogenerate: { directory: 'docs/next/targets' } },
+ { label: 'Tools', autogenerate: { directory: 'docs/next/tools' } },
+ { label: 'Guides', autogenerate: { directory: 'docs/next/guides' } },
+ { label: 'Integrations', autogenerate: { directory: 'docs/next/integrations' } },
+ { label: 'Reference', autogenerate: { directory: 'docs/next/reference' } },
],
editLink: {
baseUrl: 'https://github.com/EntityProcess/agentv/edit/main/apps/web/',
diff --git a/apps/web/src/components/VersionSelect.astro b/apps/web/src/components/VersionSelect.astro
index c4272f735..bf918231e 100644
--- a/apps/web/src/components/VersionSelect.astro
+++ b/apps/web/src/components/VersionSelect.astro
@@ -1,21 +1,25 @@
---
const versions = [
- { label: 'Canary', base: '/docs' },
+ { label: 'Next', base: '/docs/next' },
{ label: 'v4.42.4', base: '/docs/v4.42.4' },
];
+// Longest base first so more specific versions match before shorter prefixes.
+const versionsByBaseLength = [...versions].sort((a, b) => b.base.length - a.base.length);
+
const pathname = Astro.url.pathname.replace(/\/$/, '') || '/';
function getCurrentVersion(path) {
- if (path === '/docs/v4.42.4' || path.startsWith('/docs/v4.42.4/')) return versions[1];
- return versions[0];
+ return (
+ versionsByBaseLength.find(
+ (version) => path === version.base || path.startsWith(`${version.base}/`),
+ ) ?? versions[0]
+ );
}
function getVersionSuffix(path) {
- if (path === '/docs' || path === '/docs/v4.42.4') return '';
- if (path.startsWith('/docs/v4.42.4/')) return path.slice('/docs/v4.42.4'.length);
- if (path.startsWith('/docs/')) return path.slice('/docs'.length);
- return '';
+ const current = getCurrentVersion(path);
+ return path === current.base ? '' : path.slice(current.base.length);
}
function withTrailingSlash(path) {
diff --git a/apps/web/src/components/VersionedSidebar.astro b/apps/web/src/components/VersionedSidebar.astro
index cd9189f0c..2ae216237 100644
--- a/apps/web/src/components/VersionedSidebar.astro
+++ b/apps/web/src/components/VersionedSidebar.astro
@@ -3,18 +3,28 @@ import MobileMenuFooter from 'virtual:starlight/components/MobileMenuFooter';
import SidebarPersister from '@astrojs/starlight/components/SidebarPersister.astro';
import SidebarSublist from '@astrojs/starlight/components/SidebarSublist.astro';
import type { SidebarEntry } from '@astrojs/starlight/utils/routing/types';
-import archiveRoutes from '../data/docs-v4.42.4-routes.json';
+import v4Routes from '../data/docs-v4.42.4-routes.json';
+
+// The Starlight sidebar config autogenerates from docs/next/*, so the base
+// sidebar's hrefs already point at the live /docs/next/ tree unmodified.
+// Only genuinely archived versions below need their hrefs remapped.
+const LIVE_PREFIX = '/docs/next/';
+const ARCHIVED_VERSIONS = [{ slug: 'v4.42.4', routes: v4Routes }];
-const ARCHIVE_PREFIX = '/docs/v4.42.4/';
const { sidebar } = Astro.locals.starlightRoute;
const pathname = withTrailingSlash(Astro.url.pathname);
-const routeSet = new Set(archiveRoutes);
-const renderedSidebar = isArchivePath(pathname) ? toArchiveSidebar(sidebar) : sidebar;
+const archiveVersion = ARCHIVED_VERSIONS.find((version) => isArchivePath(pathname, version.slug));
+const renderedSidebar = archiveVersion ? toArchiveSidebar(sidebar, archiveVersion) : sidebar;
+
+function toArchiveSidebar(
+ entries: SidebarEntry[],
+ archiveVersion: (typeof ARCHIVED_VERSIONS)[number],
+): SidebarEntry[] {
+ const routeSet = new Set(archiveVersion.routes);
-function toArchiveSidebar(entries: SidebarEntry[]): SidebarEntry[] {
return entries.flatMap((entry) => {
if (entry.type === 'link') {
- const archiveHref = toArchiveHref(entry.href);
+ const archiveHref = toArchiveHref(entry.href, archiveVersion.slug);
if (!routeSet.has(stripHash(archiveHref))) return [];
return [
@@ -26,7 +36,7 @@ function toArchiveSidebar(entries: SidebarEntry[]): SidebarEntry[] {
];
}
- const childEntries = toArchiveSidebar(entry.entries);
+ const childEntries = toArchiveSidebar(entry.entries, archiveVersion);
if (!childEntries.length) return [];
return [
@@ -38,17 +48,19 @@ function toArchiveSidebar(entries: SidebarEntry[]): SidebarEntry[] {
});
}
-function toArchiveHref(href: string) {
- if (!href.startsWith('/docs/') || href.startsWith(ARCHIVE_PREFIX)) return href;
- return href.replace('/docs/', ARCHIVE_PREFIX);
+function toArchiveHref(href: string, slug: string) {
+ const archivePrefix = `/docs/${slug}/`;
+ if (!href.startsWith(LIVE_PREFIX) || href.startsWith(archivePrefix)) return href;
+ return href.replace(LIVE_PREFIX, archivePrefix);
}
function withTrailingSlash(path: string) {
return path.endsWith('/') ? path : `${path}/`;
}
-function isArchivePath(path: string) {
- return path === ARCHIVE_PREFIX || path.startsWith(ARCHIVE_PREFIX);
+function isArchivePath(path: string, slug: string) {
+ const archivePrefix = `/docs/${slug}/`;
+ return path === archivePrefix || path.startsWith(archivePrefix);
}
function stripHash(href: string) {
diff --git a/apps/web/src/content/docs/docs/evaluation/batch-cli.mdx b/apps/web/src/content/docs/docs/next/evaluation/batch-cli.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/evaluation/batch-cli.mdx
rename to apps/web/src/content/docs/docs/next/evaluation/batch-cli.mdx
diff --git a/apps/web/src/content/docs/docs/evaluation/eval-cases.mdx b/apps/web/src/content/docs/docs/next/evaluation/eval-cases.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/evaluation/eval-cases.mdx
rename to apps/web/src/content/docs/docs/next/evaluation/eval-cases.mdx
diff --git a/apps/web/src/content/docs/docs/evaluation/eval-files.mdx b/apps/web/src/content/docs/docs/next/evaluation/eval-files.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/evaluation/eval-files.mdx
rename to apps/web/src/content/docs/docs/next/evaluation/eval-files.mdx
diff --git a/apps/web/src/content/docs/docs/evaluation/examples.mdx b/apps/web/src/content/docs/docs/next/evaluation/examples.mdx
similarity index 97%
rename from apps/web/src/content/docs/docs/evaluation/examples.mdx
rename to apps/web/src/content/docs/docs/next/evaluation/examples.mdx
index 5abc13d9d..3de5e3899 100644
--- a/apps/web/src/content/docs/docs/evaluation/examples.mdx
+++ b/apps/web/src/content/docs/docs/next/evaluation/examples.mdx
@@ -121,7 +121,7 @@ tests:
- Output contains the transformed spreadsheet text including the revenue rows
```
-See [`examples/features/preprocessors/`](../../../../examples/features/preprocessors/) for a runnable end-to-end example with a file-producing target and custom grader target.
+See [`examples/features/preprocessors/`](../../../../../examples/features/preprocessors/) for a runnable end-to-end example with a file-producing target and custom grader target.
## Tool Trajectory
@@ -189,7 +189,7 @@ assert:
prompt: ../prompts/grader-pass-fail-v1.md
```
-See [`examples/showcase/offline-grader-benchmark/`](../../../../examples/showcase/offline-grader-benchmark/) for the full workflow, replay target, export contract, scoring script, and A/B compare commands.
+See [`examples/showcase/offline-grader-benchmark/`](../../../../../examples/showcase/offline-grader-benchmark/) for the full workflow, replay target, export contract, scoring script, and A/B compare commands.
## Static Trace
diff --git a/apps/web/src/content/docs/docs/evaluation/experiments.mdx b/apps/web/src/content/docs/docs/next/evaluation/experiments.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/evaluation/experiments.mdx
rename to apps/web/src/content/docs/docs/next/evaluation/experiments.mdx
diff --git a/apps/web/src/content/docs/docs/evaluation/rubrics.mdx b/apps/web/src/content/docs/docs/next/evaluation/rubrics.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/evaluation/rubrics.mdx
rename to apps/web/src/content/docs/docs/next/evaluation/rubrics.mdx
diff --git a/apps/web/src/content/docs/docs/evaluation/running-evals.mdx b/apps/web/src/content/docs/docs/next/evaluation/running-evals.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/evaluation/running-evals.mdx
rename to apps/web/src/content/docs/docs/next/evaluation/running-evals.mdx
diff --git a/apps/web/src/content/docs/docs/evaluation/sdk.mdx b/apps/web/src/content/docs/docs/next/evaluation/sdk.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/evaluation/sdk.mdx
rename to apps/web/src/content/docs/docs/next/evaluation/sdk.mdx
diff --git a/apps/web/src/content/docs/docs/getting-started/installation.mdx b/apps/web/src/content/docs/docs/next/getting-started/installation.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/getting-started/installation.mdx
rename to apps/web/src/content/docs/docs/next/getting-started/installation.mdx
diff --git a/apps/web/src/content/docs/docs/getting-started/quickstart.mdx b/apps/web/src/content/docs/docs/next/getting-started/quickstart.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/getting-started/quickstart.mdx
rename to apps/web/src/content/docs/docs/next/getting-started/quickstart.mdx
diff --git a/apps/web/src/content/docs/docs/graders/code-graders.mdx b/apps/web/src/content/docs/docs/next/graders/code-graders.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/graders/code-graders.mdx
rename to apps/web/src/content/docs/docs/next/graders/code-graders.mdx
diff --git a/apps/web/src/content/docs/docs/graders/composite.mdx b/apps/web/src/content/docs/docs/next/graders/composite.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/graders/composite.mdx
rename to apps/web/src/content/docs/docs/next/graders/composite.mdx
diff --git a/apps/web/src/content/docs/docs/graders/custom-assertions.mdx b/apps/web/src/content/docs/docs/next/graders/custom-assertions.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/graders/custom-assertions.mdx
rename to apps/web/src/content/docs/docs/next/graders/custom-assertions.mdx
diff --git a/apps/web/src/content/docs/docs/graders/custom-graders.mdx b/apps/web/src/content/docs/docs/next/graders/custom-graders.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/graders/custom-graders.mdx
rename to apps/web/src/content/docs/docs/next/graders/custom-graders.mdx
diff --git a/apps/web/src/content/docs/docs/graders/execution-metrics.mdx b/apps/web/src/content/docs/docs/next/graders/execution-metrics.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/graders/execution-metrics.mdx
rename to apps/web/src/content/docs/docs/next/graders/execution-metrics.mdx
diff --git a/apps/web/src/content/docs/docs/graders/llm-graders.mdx b/apps/web/src/content/docs/docs/next/graders/llm-graders.mdx
similarity index 98%
rename from apps/web/src/content/docs/docs/graders/llm-graders.mdx
rename to apps/web/src/content/docs/docs/next/graders/llm-graders.mdx
index c3c0f8272..1a7515f81 100644
--- a/apps/web/src/content/docs/docs/graders/llm-graders.mdx
+++ b/apps/web/src/content/docs/docs/next/graders/llm-graders.mdx
@@ -221,7 +221,7 @@ Resolution order:
- if no preprocessor matches, AgentV falls back to a UTF-8 text read
- if the fallback read looks binary or invalid, the grader receives a warning note instead of failing the test run
-See [`examples/features/preprocessors/`](../../../../examples/features/preprocessors/) for a runnable example with a file-producing target and a custom preprocessor script.
+See [`examples/features/preprocessors/`](../../../../../examples/features/preprocessors/) for a runnable example with a file-producing target and a custom preprocessor script.
## Available Context Fields
diff --git a/apps/web/src/content/docs/docs/graders/python-helpers.mdx b/apps/web/src/content/docs/docs/next/graders/python-helpers.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/graders/python-helpers.mdx
rename to apps/web/src/content/docs/docs/next/graders/python-helpers.mdx
diff --git a/apps/web/src/content/docs/docs/graders/structured-data.mdx b/apps/web/src/content/docs/docs/next/graders/structured-data.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/graders/structured-data.mdx
rename to apps/web/src/content/docs/docs/next/graders/structured-data.mdx
diff --git a/apps/web/src/content/docs/docs/graders/tool-trajectory.mdx b/apps/web/src/content/docs/docs/next/graders/tool-trajectory.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/graders/tool-trajectory.mdx
rename to apps/web/src/content/docs/docs/next/graders/tool-trajectory.mdx
diff --git a/apps/web/src/content/docs/docs/guides/agent-eval-layers.mdx b/apps/web/src/content/docs/docs/next/guides/agent-eval-layers.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/guides/agent-eval-layers.mdx
rename to apps/web/src/content/docs/docs/next/guides/agent-eval-layers.mdx
diff --git a/apps/web/src/content/docs/docs/guides/autoresearch.mdx b/apps/web/src/content/docs/docs/next/guides/autoresearch.mdx
similarity index 99%
rename from apps/web/src/content/docs/docs/guides/autoresearch.mdx
rename to apps/web/src/content/docs/docs/next/guides/autoresearch.mdx
index e5dc09b4a..7ae9147b3 100644
--- a/apps/web/src/content/docs/docs/guides/autoresearch.mdx
+++ b/apps/web/src/content/docs/docs/next/guides/autoresearch.mdx
@@ -6,7 +6,7 @@ sidebar:
---
import { Image } from 'astro:assets';
-import trajectoryChart from '../../../../assets/screenshots/autoresearch-trajectory.png';
+import trajectoryChart from '../../../../../assets/screenshots/autoresearch-trajectory.png';
Autoresearch is an unattended optimization loop that **automatically improves your agent skills** through repeated eval cycles. It runs the same evaluate → analyze → improve loop described in the [Skill Improvement Workflow](/docs/guides/skill-improvement-workflow/), but does it hands-free — no human review between cycles.
diff --git a/apps/web/src/content/docs/docs/guides/benchmark-provenance.mdx b/apps/web/src/content/docs/docs/next/guides/benchmark-provenance.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/guides/benchmark-provenance.mdx
rename to apps/web/src/content/docs/docs/next/guides/benchmark-provenance.mdx
diff --git a/apps/web/src/content/docs/docs/guides/enterprise-governance.mdx b/apps/web/src/content/docs/docs/next/guides/enterprise-governance.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/guides/enterprise-governance.mdx
rename to apps/web/src/content/docs/docs/next/guides/enterprise-governance.mdx
diff --git a/apps/web/src/content/docs/docs/guides/eval-authoring.mdx b/apps/web/src/content/docs/docs/next/guides/eval-authoring.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/guides/eval-authoring.mdx
rename to apps/web/src/content/docs/docs/next/guides/eval-authoring.mdx
diff --git a/apps/web/src/content/docs/docs/guides/evaluation-types.mdx b/apps/web/src/content/docs/docs/next/guides/evaluation-types.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/guides/evaluation-types.mdx
rename to apps/web/src/content/docs/docs/next/guides/evaluation-types.mdx
diff --git a/apps/web/src/content/docs/docs/guides/skill-improvement-workflow.mdx b/apps/web/src/content/docs/docs/next/guides/skill-improvement-workflow.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/guides/skill-improvement-workflow.mdx
rename to apps/web/src/content/docs/docs/next/guides/skill-improvement-workflow.mdx
diff --git a/apps/web/src/content/docs/docs/guides/workspace-architecture.mdx b/apps/web/src/content/docs/docs/next/guides/workspace-architecture.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/guides/workspace-architecture.mdx
rename to apps/web/src/content/docs/docs/next/guides/workspace-architecture.mdx
diff --git a/apps/web/src/content/docs/docs/index.mdx b/apps/web/src/content/docs/docs/next/index.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/index.mdx
rename to apps/web/src/content/docs/docs/next/index.mdx
diff --git a/apps/web/src/content/docs/docs/integrations/agent-skills-evals.mdx b/apps/web/src/content/docs/docs/next/integrations/agent-skills-evals.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/integrations/agent-skills-evals.mdx
rename to apps/web/src/content/docs/docs/next/integrations/agent-skills-evals.mdx
diff --git a/apps/web/src/content/docs/docs/integrations/autoevals-integration.mdx b/apps/web/src/content/docs/docs/next/integrations/autoevals-integration.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/integrations/autoevals-integration.mdx
rename to apps/web/src/content/docs/docs/next/integrations/autoevals-integration.mdx
diff --git a/apps/web/src/content/docs/docs/integrations/langfuse.mdx b/apps/web/src/content/docs/docs/next/integrations/langfuse.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/integrations/langfuse.mdx
rename to apps/web/src/content/docs/docs/next/integrations/langfuse.mdx
diff --git a/apps/web/src/content/docs/docs/integrations/phoenix.mdx b/apps/web/src/content/docs/docs/next/integrations/phoenix.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/integrations/phoenix.mdx
rename to apps/web/src/content/docs/docs/next/integrations/phoenix.mdx
diff --git a/apps/web/src/content/docs/docs/reference/comparison.mdx b/apps/web/src/content/docs/docs/next/reference/comparison.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/reference/comparison.mdx
rename to apps/web/src/content/docs/docs/next/reference/comparison.mdx
diff --git a/apps/web/src/content/docs/docs/reference/result-artifacts.mdx b/apps/web/src/content/docs/docs/next/reference/result-artifacts.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/reference/result-artifacts.mdx
rename to apps/web/src/content/docs/docs/next/reference/result-artifacts.mdx
diff --git a/apps/web/src/content/docs/docs/targets/cli-provider.mdx b/apps/web/src/content/docs/docs/next/targets/cli-provider.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/targets/cli-provider.mdx
rename to apps/web/src/content/docs/docs/next/targets/cli-provider.mdx
diff --git a/apps/web/src/content/docs/docs/targets/coding-agents.mdx b/apps/web/src/content/docs/docs/next/targets/coding-agents.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/targets/coding-agents.mdx
rename to apps/web/src/content/docs/docs/next/targets/coding-agents.mdx
diff --git a/apps/web/src/content/docs/docs/targets/configuration.mdx b/apps/web/src/content/docs/docs/next/targets/configuration.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/targets/configuration.mdx
rename to apps/web/src/content/docs/docs/next/targets/configuration.mdx
diff --git a/apps/web/src/content/docs/docs/targets/custom-providers.mdx b/apps/web/src/content/docs/docs/next/targets/custom-providers.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/targets/custom-providers.mdx
rename to apps/web/src/content/docs/docs/next/targets/custom-providers.mdx
diff --git a/apps/web/src/content/docs/docs/targets/llm-providers.mdx b/apps/web/src/content/docs/docs/next/targets/llm-providers.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/targets/llm-providers.mdx
rename to apps/web/src/content/docs/docs/next/targets/llm-providers.mdx
diff --git a/apps/web/src/content/docs/docs/targets/retry.mdx b/apps/web/src/content/docs/docs/next/targets/retry.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/targets/retry.mdx
rename to apps/web/src/content/docs/docs/next/targets/retry.mdx
diff --git a/apps/web/src/content/docs/docs/tools/compare.mdx b/apps/web/src/content/docs/docs/next/tools/compare.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/tools/compare.mdx
rename to apps/web/src/content/docs/docs/next/tools/compare.mdx
diff --git a/apps/web/src/content/docs/docs/tools/convert.mdx b/apps/web/src/content/docs/docs/next/tools/convert.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/tools/convert.mdx
rename to apps/web/src/content/docs/docs/next/tools/convert.mdx
diff --git a/apps/web/src/content/docs/docs/tools/dashboard.mdx b/apps/web/src/content/docs/docs/next/tools/dashboard.mdx
similarity index 95%
rename from apps/web/src/content/docs/docs/tools/dashboard.mdx
rename to apps/web/src/content/docs/docs/next/tools/dashboard.mdx
index d30c34afc..4d7a6c4fd 100644
--- a/apps/web/src/content/docs/docs/tools/dashboard.mdx
+++ b/apps/web/src/content/docs/docs/next/tools/dashboard.mdx
@@ -6,20 +6,20 @@ sidebar:
---
import { Image } from 'astro:assets';
-import studioRuns from '../../../../assets/screenshots/studio-runs.png';
-import studioRunDetail from '../../../../assets/screenshots/studio-run-detail.png';
-import studioExperiments from '../../../../assets/screenshots/studio-experiments.png';
-import studioProjects from '../../../../assets/screenshots/studio-projects.png';
-import studioProjectsMulti from '../../../../assets/screenshots/studio-projects-multi.png';
-import studioCompareAggregated from '../../../../assets/screenshots/studio-compare-aggregated.png';
-import studioComparePerRun from '../../../../assets/screenshots/studio-compare-per-run.png';
-import studioCompareSideBySide from '../../../../assets/screenshots/studio-compare-side-by-side.png';
-import studioRunsBench from '../../../../assets/screenshots/studio-runs-bench.png';
-import studioAnalyticsAggregated from '../../../../assets/screenshots/studio-analytics-aggregated.png';
-import studioAnalyticsCharts from '../../../../assets/screenshots/studio-analytics-charts.png';
-import studioAnalyticsTrend from '../../../../assets/screenshots/studio-analytics-trend.png';
-import studioRemoteResultsBeforeSync from '../../../../assets/screenshots/studio-remote-results-before-sync.png';
-import studioRemoteResultsAfterSync from '../../../../assets/screenshots/studio-remote-results-after-sync.png';
+import studioRuns from '../../../../../assets/screenshots/studio-runs.png';
+import studioRunDetail from '../../../../../assets/screenshots/studio-run-detail.png';
+import studioExperiments from '../../../../../assets/screenshots/studio-experiments.png';
+import studioProjects from '../../../../../assets/screenshots/studio-projects.png';
+import studioProjectsMulti from '../../../../../assets/screenshots/studio-projects-multi.png';
+import studioCompareAggregated from '../../../../../assets/screenshots/studio-compare-aggregated.png';
+import studioComparePerRun from '../../../../../assets/screenshots/studio-compare-per-run.png';
+import studioCompareSideBySide from '../../../../../assets/screenshots/studio-compare-side-by-side.png';
+import studioRunsBench from '../../../../../assets/screenshots/studio-runs-bench.png';
+import studioAnalyticsAggregated from '../../../../../assets/screenshots/studio-analytics-aggregated.png';
+import studioAnalyticsCharts from '../../../../../assets/screenshots/studio-analytics-charts.png';
+import studioAnalyticsTrend from '../../../../../assets/screenshots/studio-analytics-trend.png';
+import studioRemoteResultsBeforeSync from '../../../../../assets/screenshots/studio-remote-results-before-sync.png';
+import studioRemoteResultsAfterSync from '../../../../../assets/screenshots/studio-remote-results-after-sync.png';
The `dashboard` command launches a web-based dashboard for browsing evaluation runs, inspecting individual test results, and reviewing scores. It shows both local runs and runs synced from a remote results repository.
diff --git a/apps/web/src/content/docs/docs/tools/import.mdx b/apps/web/src/content/docs/docs/next/tools/import.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/tools/import.mdx
rename to apps/web/src/content/docs/docs/next/tools/import.mdx
diff --git a/apps/web/src/content/docs/docs/tools/inspect.mdx b/apps/web/src/content/docs/docs/next/tools/inspect.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/tools/inspect.mdx
rename to apps/web/src/content/docs/docs/next/tools/inspect.mdx
diff --git a/apps/web/src/content/docs/docs/tools/prepare.mdx b/apps/web/src/content/docs/docs/next/tools/prepare.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/tools/prepare.mdx
rename to apps/web/src/content/docs/docs/next/tools/prepare.mdx
diff --git a/apps/web/src/content/docs/docs/tools/results.mdx b/apps/web/src/content/docs/docs/next/tools/results.mdx
similarity index 98%
rename from apps/web/src/content/docs/docs/tools/results.mdx
rename to apps/web/src/content/docs/docs/next/tools/results.mdx
index 1e390e455..e60ad51e1 100644
--- a/apps/web/src/content/docs/docs/tools/results.mdx
+++ b/apps/web/src/content/docs/docs/next/tools/results.mdx
@@ -6,8 +6,8 @@ sidebar:
---
import { Image } from 'astro:assets';
-import resultsReportOverview from '../../../../assets/screenshots/results-report-overview.png';
-import resultsReportDetails from '../../../../assets/screenshots/results-report-details.png';
+import resultsReportOverview from '../../../../../assets/screenshots/results-report-overview.png';
+import resultsReportDetails from '../../../../../assets/screenshots/results-report-details.png';
The `results` command family works on existing local AgentV run workspaces and `index.jsonl` manifests. Use it after an eval run to inspect failures, validate manifests, export artifact layouts, combine/delete local run workspaces, or generate a shareable HTML report.
diff --git a/apps/web/src/content/docs/docs/tools/trend.mdx b/apps/web/src/content/docs/docs/next/tools/trend.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/tools/trend.mdx
rename to apps/web/src/content/docs/docs/next/tools/trend.mdx
diff --git a/apps/web/src/content/docs/docs/tools/validate.mdx b/apps/web/src/content/docs/docs/next/tools/validate.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/tools/validate.mdx
rename to apps/web/src/content/docs/docs/next/tools/validate.mdx
diff --git a/apps/web/src/content/docs/docs/tools/wip-checkpoints.mdx b/apps/web/src/content/docs/docs/next/tools/wip-checkpoints.mdx
similarity index 100%
rename from apps/web/src/content/docs/docs/tools/wip-checkpoints.mdx
rename to apps/web/src/content/docs/docs/next/tools/wip-checkpoints.mdx
diff --git a/apps/web/src/content/docs/docs/v4.42.4/evaluation/batch-cli.mdx b/apps/web/src/content/docs/docs/v4.42.4/evaluation/batch-cli.mdx
index c121804c5..f9b204b46 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/evaluation/batch-cli.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/evaluation/batch-cli.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/evaluation/batch-cli
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Batch CLI evaluation handles tools that process multiple inputs at once — bulk classifiers, screening engines, or any runner that reads all tests and outputs results in one pass.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/evaluation/eval-cases.mdx b/apps/web/src/content/docs/docs/v4.42.4/evaluation/eval-cases.mdx
index 9e4421159..533ebbac6 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/evaluation/eval-cases.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/evaluation/eval-cases.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/evaluation/eval-cases
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Tests are individual test entries within an evaluation file. Each test defines input messages, expected outcomes, and optional grader overrides.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/evaluation/eval-files.mdx b/apps/web/src/content/docs/docs/v4.42.4/evaluation/eval-files.mdx
index 834a2fbf9..838a1d886 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/evaluation/eval-files.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/evaluation/eval-files.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/evaluation/eval-files
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Evaluation files define the test cases, targets, and graders for an evaluation run. AgentV supports two formats: YAML and JSONL.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/evaluation/examples.mdx b/apps/web/src/content/docs/docs/v4.42.4/evaluation/examples.mdx
index b68e37e84..c2691b96c 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/evaluation/examples.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/evaluation/examples.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/evaluation/examples
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
This page collects complete eval file examples you can copy and adapt. Each demonstrates a different AgentV pattern.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/evaluation/rubrics.mdx b/apps/web/src/content/docs/docs/v4.42.4/evaluation/rubrics.mdx
index 3c7e8ba42..8657bc0de 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/evaluation/rubrics.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/evaluation/rubrics.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/evaluation/rubrics
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Rubrics are defined with `assertions` entries and support binary checklist grading and score-range analytic grading.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/evaluation/running-evals.mdx b/apps/web/src/content/docs/docs/v4.42.4/evaluation/running-evals.mdx
index 7483cb9fc..6138d2fd2 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/evaluation/running-evals.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/evaluation/running-evals.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/evaluation/running-evals
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
## Run an Evaluation
diff --git a/apps/web/src/content/docs/docs/v4.42.4/evaluation/sdk.mdx b/apps/web/src/content/docs/docs/v4.42.4/evaluation/sdk.mdx
index debdba5f0..a0c839da8 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/evaluation/sdk.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/evaluation/sdk.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/evaluation/sdk
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
YAML remains AgentV's canonical, portable eval format. The SDK surfaces below are for cases where you want to generate YAML-shaped definitions in code, embed eval runs inside another application, or write executable graders and prompt templates. For authoring helpers, `@agentv/sdk` is AgentV's public lightweight SDK package.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/getting-started/installation.mdx b/apps/web/src/content/docs/docs/v4.42.4/getting-started/installation.mdx
index 0941b63e2..e128d6bf2 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/getting-started/installation.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/getting-started/installation.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/getting-started/installation
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
## Prerequisites
diff --git a/apps/web/src/content/docs/docs/v4.42.4/getting-started/quickstart.mdx b/apps/web/src/content/docs/docs/v4.42.4/getting-started/quickstart.mdx
index d70a92810..bb3a23aa9 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/getting-started/quickstart.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/getting-started/quickstart.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/getting-started/quickstart
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Follow these steps to create and run your first evaluation.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/graders/code-graders.mdx b/apps/web/src/content/docs/docs/v4.42.4/graders/code-graders.mdx
index 290c9cddf..74af6f546 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/graders/code-graders.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/graders/code-graders.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/graders/code-graders
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Code graders are scripts that evaluate agent responses deterministically. Write them in any language — Python, TypeScript, Node, or any executable.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/graders/composite.mdx b/apps/web/src/content/docs/docs/v4.42.4/graders/composite.mdx
index 5ec02b041..ce04aa05a 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/graders/composite.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/graders/composite.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/graders/composite
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Composite graders combine multiple graders and aggregate their results into a single score. This enables sophisticated evaluation patterns like safety gates, weighted scoring, and conflict resolution.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/graders/custom-assertions.mdx b/apps/web/src/content/docs/docs/v4.42.4/graders/custom-assertions.mdx
index 3dd941949..755896596 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/graders/custom-assertions.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/graders/custom-assertions.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/graders/custom-assertions
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Custom assertions let you add evaluation logic that goes beyond built-in types. Define a TypeScript function, drop it in `.agentv/assertions/`, and reference it by name in your YAML eval files.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/graders/custom-graders.mdx b/apps/web/src/content/docs/docs/v4.42.4/graders/custom-graders.mdx
index 7eaeb4506..6690791b2 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/graders/custom-graders.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/graders/custom-graders.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/graders/custom-graders
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
AgentV supports multiple grader types that can be combined for comprehensive evaluation.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/graders/execution-metrics.mdx b/apps/web/src/content/docs/docs/v4.42.4/graders/execution-metrics.mdx
index 79651f7bc..59591f8e7 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/graders/execution-metrics.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/graders/execution-metrics.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/graders/execution-metrics
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
AgentV provides built-in graders for checking execution metrics against thresholds. These are useful for enforcing efficiency constraints without writing custom code.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/graders/llm-graders.mdx b/apps/web/src/content/docs/docs/v4.42.4/graders/llm-graders.mdx
index 01639215a..91c8d68ea 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/graders/llm-graders.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/graders/llm-graders.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/graders/llm-graders
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
LLM graders use a language model to evaluate agent responses against custom criteria defined in a prompt file.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/graders/python-helpers.mdx b/apps/web/src/content/docs/docs/v4.42.4/graders/python-helpers.mdx
index 1ad5ce3c3..7f5693a6d 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/graders/python-helpers.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/graders/python-helpers.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/graders/python-helpers
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
AgentV's Python surface currently starts as a repo-local helper example, not a separate runner or published package.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/graders/structured-data.mdx b/apps/web/src/content/docs/docs/v4.42.4/graders/structured-data.mdx
index fb5e12d17..e51f8a70f 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/graders/structured-data.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/graders/structured-data.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/graders/structured-data
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Built-in graders for grading structured outputs and gating on execution metrics:
diff --git a/apps/web/src/content/docs/docs/v4.42.4/graders/tool-trajectory.mdx b/apps/web/src/content/docs/docs/v4.42.4/graders/tool-trajectory.mdx
index 4f68c6d54..de55e3355 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/graders/tool-trajectory.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/graders/tool-trajectory.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/graders/tool-trajectory
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Tool trajectory graders validate that an agent used the expected tools during execution. They work with trace data returned by agent providers (codex, vscode, cli with trace support).
diff --git a/apps/web/src/content/docs/docs/v4.42.4/guides/agent-eval-layers.mdx b/apps/web/src/content/docs/docs/v4.42.4/guides/agent-eval-layers.mdx
index 7b7752fcc..9c8adcd84 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/guides/agent-eval-layers.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/guides/agent-eval-layers.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/guides/agent-eval-layers
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
A practical taxonomy for structuring agent evaluations. Each layer targets a different dimension of agent behavior, and maps directly to AgentV graders you can drop into an `EVAL.yaml`.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/guides/autoresearch.mdx b/apps/web/src/content/docs/docs/v4.42.4/guides/autoresearch.mdx
index 9f322120b..c38755fb0 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/guides/autoresearch.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/guides/autoresearch.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/guides/autoresearch
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
import { Image } from 'astro:assets';
diff --git a/apps/web/src/content/docs/docs/v4.42.4/guides/benchmark-provenance.mdx b/apps/web/src/content/docs/docs/v4.42.4/guides/benchmark-provenance.mdx
index 5bc5af444..0b986c2e1 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/guides/benchmark-provenance.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/guides/benchmark-provenance.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/guides/benchmark-provenance
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Benchmark suites usually need more than a prompt and a score. They carry source
diff --git a/apps/web/src/content/docs/docs/v4.42.4/guides/enterprise-governance.mdx b/apps/web/src/content/docs/docs/v4.42.4/guides/enterprise-governance.mdx
index 35929bab5..6ddc0c236 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/guides/enterprise-governance.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/guides/enterprise-governance.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/guides/enterprise-governance
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
This guide describes a lightweight convention for keeping a documented
diff --git a/apps/web/src/content/docs/docs/v4.42.4/guides/eval-authoring.mdx b/apps/web/src/content/docs/docs/v4.42.4/guides/eval-authoring.mdx
index e1f57754c..5d2405ef7 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/guides/eval-authoring.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/guides/eval-authoring.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/guides/eval-authoring
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
## Workspace Setup: Skill Discovery Paths
diff --git a/apps/web/src/content/docs/docs/v4.42.4/guides/evaluation-types.mdx b/apps/web/src/content/docs/docs/v4.42.4/guides/evaluation-types.mdx
index 66e5fe209..4a107a917 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/guides/evaluation-types.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/guides/evaluation-types.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/guides/evaluation-types
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Agent evaluation has two fundamentally different concerns: **execution quality** and **trigger quality**. They require different tooling, different methodologies, and different optimization surfaces. Conflating them leads to eval configs that are noisy, hard to maintain, and unreliable.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/guides/human-review.mdx b/apps/web/src/content/docs/docs/v4.42.4/guides/human-review.mdx
index 1a58af4d4..9cb7b3f32 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/guides/human-review.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/guides/human-review.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/guides/human-review
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Human review sits between automated scoring and the next iteration. Automated graders catch regressions and enforce thresholds, but a human reviewer spots score-behavior mismatches, qualitative regressions, and cases where a grader is too strict or too lenient.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/guides/skill-improvement-workflow.mdx b/apps/web/src/content/docs/docs/v4.42.4/guides/skill-improvement-workflow.mdx
index 331eb3ac4..ec96c9ac9 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/guides/skill-improvement-workflow.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/guides/skill-improvement-workflow.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/guides/skill-improvement-workflow
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
## Introduction
diff --git a/apps/web/src/content/docs/docs/v4.42.4/guides/workspace-architecture.mdx b/apps/web/src/content/docs/docs/v4.42.4/guides/workspace-architecture.mdx
index 857f4e6c5..41c6f068b 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/guides/workspace-architecture.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/guides/workspace-architecture.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/guides/workspace-architecture
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
AgentV workspaces are the shared substrate an eval runs against: templates,
diff --git a/apps/web/src/content/docs/docs/v4.42.4/guides/workspace-pool.mdx b/apps/web/src/content/docs/docs/v4.42.4/guides/workspace-pool.mdx
index 31f3492c8..30e87cc2f 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/guides/workspace-pool.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/guides/workspace-pool.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/guides/workspace-pool
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Workspace pooling keeps materialized workspaces on disk between eval runs. Instead of cloning repos and checking out files every time, pooled workspaces reset in-place — typically reducing setup from minutes to seconds for large repositories.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/index.mdx b/apps/web/src/content/docs/docs/v4.42.4/index.mdx
index 863dfa8dc..5dc5c7eec 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/index.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/index.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
AgentV is a CLI-first AI agent evaluation framework. It evaluates your agents locally with multi-objective scoring (correctness, latency, cost, safety) from YAML specifications. Deterministic code graders + customizable LLM graders, all version-controlled in Git.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/integrations/agent-skills-evals.mdx b/apps/web/src/content/docs/docs/v4.42.4/integrations/agent-skills-evals.mdx
index 6ebec53cf..fa89874d3 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/integrations/agent-skills-evals.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/integrations/agent-skills-evals.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/integrations/agent-skills-evals
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
## Overview
diff --git a/apps/web/src/content/docs/docs/v4.42.4/integrations/autoevals-integration.mdx b/apps/web/src/content/docs/docs/v4.42.4/integrations/autoevals-integration.mdx
index 4a0aba7ad..368c3754d 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/integrations/autoevals-integration.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/integrations/autoevals-integration.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/integrations/autoevals-integration
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
## Overview
diff --git a/apps/web/src/content/docs/docs/v4.42.4/integrations/langfuse.mdx b/apps/web/src/content/docs/docs/v4.42.4/integrations/langfuse.mdx
index e1163c27d..7275bb014 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/integrations/langfuse.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/integrations/langfuse.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/integrations/langfuse
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
AgentV streams evaluation traces to [Langfuse](https://langfuse.com) using standard OTLP/HTTP — no Langfuse SDK required. The `langfuse` backend resolver handles endpoint construction and authentication automatically.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/integrations/phoenix.mdx b/apps/web/src/content/docs/docs/v4.42.4/integrations/phoenix.mdx
index 200816c6c..e24ab9967 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/integrations/phoenix.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/integrations/phoenix.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/integrations/phoenix
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
The Phoenix adapter converts AgentV eval YAML suites into Phoenix dataset and
diff --git a/apps/web/src/content/docs/docs/v4.42.4/reference/comparison.mdx b/apps/web/src/content/docs/docs/v4.42.4/reference/comparison.mdx
index 8399da87c..a376cea82 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/reference/comparison.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/reference/comparison.mdx
@@ -4,10 +4,6 @@ description: How AgentV fits into the AI agent lifecycle alongside complementary
slug: docs/v4.42.4/reference/comparison
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
AgentV is the **evaluation layer** in the AI agent lifecycle. It works alongside runtime governance and observability tools — each handles a different concern with zero overlap.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/targets/cli-provider.mdx b/apps/web/src/content/docs/docs/v4.42.4/targets/cli-provider.mdx
index 398b16760..d0c5345a9 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/targets/cli-provider.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/targets/cli-provider.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/targets/cli-provider
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
The `cli` provider runs an arbitrary shell command per test case and captures its output as the target's response. It's the escape hatch that lets you evaluate *anything* that exposes a command-line entry point — your own agent, a third-party CLI, a stub that prints a fixed answer, a script that calls an in-house microservice, etc.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/targets/coding-agents.mdx b/apps/web/src/content/docs/docs/v4.42.4/targets/coding-agents.mdx
index 757971657..f4f2e59f4 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/targets/coding-agents.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/targets/coding-agents.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/targets/coding-agents
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Coding agent targets evaluate AI coding assistants and CLI-based agents. These targets require a `grader_target` (also accepts `judge_target` for backward compatibility) to run LLM-based graders.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/targets/configuration.mdx b/apps/web/src/content/docs/docs/v4.42.4/targets/configuration.mdx
index 2c4123f11..ba2fb4b1f 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/targets/configuration.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/targets/configuration.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/targets/configuration
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Targets define which agent or LLM provider to evaluate. They are configured in `.agentv/targets.yaml` to decouple eval files from provider details.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/targets/custom-providers.mdx b/apps/web/src/content/docs/docs/v4.42.4/targets/custom-providers.mdx
index 0b5069310..6c5c2394e 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/targets/custom-providers.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/targets/custom-providers.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/targets/custom-providers
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Custom providers let you implement evaluation targets in TypeScript instead of shelling out to a CLI command. This is useful when you want to call an HTTP API, use an SDK, or implement custom logic that goes beyond what the CLI provider supports.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/targets/llm-providers.mdx b/apps/web/src/content/docs/docs/v4.42.4/targets/llm-providers.mdx
index 5cb5bd0ec..db90b3c08 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/targets/llm-providers.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/targets/llm-providers.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/targets/llm-providers
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
LLM provider targets call language model APIs directly. These are used both as evaluation targets and as grader targets for scoring.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/targets/retry.mdx b/apps/web/src/content/docs/docs/v4.42.4/targets/retry.mdx
index 20ebe9093..1963b9a43 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/targets/retry.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/targets/retry.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/targets/retry
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
Configure automatic retry with exponential backoff for transient failures.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/tools/compare.mdx b/apps/web/src/content/docs/docs/v4.42.4/tools/compare.mdx
index baceac8f0..14d735493 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/tools/compare.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/tools/compare.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/tools/compare
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
The `compare` command computes deltas between two evaluation runs for A/B testing.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/tools/convert.mdx b/apps/web/src/content/docs/docs/v4.42.4/tools/convert.mdx
index a43c51e61..81d80b116 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/tools/convert.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/tools/convert.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/tools/convert
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
The `convert` command converts evaluation files between formats: YAML ↔ JSONL, and Agent Skills `evals.json` → AgentV EVAL YAML.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/tools/dashboard.mdx b/apps/web/src/content/docs/docs/v4.42.4/tools/dashboard.mdx
index a1cbb1341..02554447a 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/tools/dashboard.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/tools/dashboard.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/tools/dashboard
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
import { Image } from 'astro:assets';
diff --git a/apps/web/src/content/docs/docs/v4.42.4/tools/import.mdx b/apps/web/src/content/docs/docs/v4.42.4/tools/import.mdx
index 5d214bc6b..fde465dbc 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/tools/import.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/tools/import.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/tools/import
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
The `import` command converts agent session transcripts and external eval configs into AgentV formats. Transcript imports let you grade past runs offline without re-running the agent. Config imports help migrate existing suites into AgentV YAML.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/tools/inspect.mdx b/apps/web/src/content/docs/docs/v4.42.4/tools/inspect.mdx
index 571811740..59e3a5cfd 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/tools/inspect.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/tools/inspect.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/tools/inspect
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
The `inspect` command provides headless trace inspection and analysis — no server or dashboard needed.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/tools/prepare.mdx b/apps/web/src/content/docs/docs/v4.42.4/tools/prepare.mdx
index 07728c92a..6856b521b 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/tools/prepare.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/tools/prepare.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/tools/prepare
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
`agentv prepare` materializes one eval case without launching the target provider. Use it when a human, a separate agent process, or another harness should attempt the task in the same workspace state AgentV would have provided immediately before target execution.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/tools/results.mdx b/apps/web/src/content/docs/docs/v4.42.4/tools/results.mdx
index 4366c83f1..5daf29f01 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/tools/results.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/tools/results.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/tools/results
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
import { Image } from 'astro:assets';
diff --git a/apps/web/src/content/docs/docs/v4.42.4/tools/trend.mdx b/apps/web/src/content/docs/docs/v4.42.4/tools/trend.mdx
index c2d5655fc..7e333bab2 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/tools/trend.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/tools/trend.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/tools/trend
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
The `trend` command analyzes score movement across multiple historical run manifests and reports whether quality is improving, degrading, or stable over time.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/tools/validate.mdx b/apps/web/src/content/docs/docs/v4.42.4/tools/validate.mdx
index b52239034..61dab7ab7 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/tools/validate.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/tools/validate.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/tools/validate
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
The `validate` command checks evaluation files for schema errors without running them.
diff --git a/apps/web/src/content/docs/docs/v4.42.4/tools/wip-checkpoints.mdx b/apps/web/src/content/docs/docs/v4.42.4/tools/wip-checkpoints.mdx
index 14ea0641e..76fdff175 100644
--- a/apps/web/src/content/docs/docs/v4.42.4/tools/wip-checkpoints.mdx
+++ b/apps/web/src/content/docs/docs/v4.42.4/tools/wip-checkpoints.mdx
@@ -6,10 +6,6 @@ sidebar:
slug: docs/v4.42.4/tools/wip-checkpoints
editUrl: false
pagefind: false
-banner:
- content: |
- You are viewing the frozen v4.42.4 docs. Use Canary docs for the current development version.
-
---
WIP checkpoints are best-effort snapshots of an eval run while it is still executing. They are designed for long-running evals in CI, pods, or remote agents where losing the process would otherwise lose the completed test rows that were already written locally.
diff --git a/docs/adr/0011-result-output-artifact-contract.md b/docs/adr/0011-result-output-artifact-contract.md
index 69685d856..7fbde0e81 100644
--- a/docs/adr/0011-result-output-artifact-contract.md
+++ b/docs/adr/0011-result-output-artifact-contract.md
@@ -232,4 +232,4 @@ files as the canonical contract.
- Roadmap: [ROADMAP.md](../../ROADMAP.md)
- Product boundary: [.agents/product-boundary.md](../../.agents/product-boundary.md)
- Technical conventions: [.agents/conventions.md](../../.agents/conventions.md)
-- Public docs: [Result Artifact Contract](../../apps/web/src/content/docs/docs/reference/result-artifacts.mdx)
+- Public docs: [Result Artifact Contract](../../apps/web/src/content/docs/docs/next/reference/result-artifacts.mdx)
diff --git a/docs/solutions/best-practices/name-portable-config-endpoints-by-user-intent.md b/docs/solutions/best-practices/name-portable-config-endpoints-by-user-intent.md
index 7efb9b354..aefc2567c 100644
--- a/docs/solutions/best-practices/name-portable-config-endpoints-by-user-intent.md
+++ b/docs/solutions/best-practices/name-portable-config-endpoints-by-user-intent.md
@@ -80,4 +80,4 @@ Do not set `results.repo.remote` to a local alias such as `origin`. If AgentV is
- `packages/core/src/evaluation/loaders/config-loader.ts` parses nested results repository config and normalizes the endpoint URL into internal runtime fields.
- `packages/core/src/projects.ts` serializes project config and keeps `results.repo.remote` as the portable Git endpoint.
-- `apps/web/src/content/docs/docs/tools/dashboard.mdx` documents the dashboard remote-results setup path.
+- `apps/web/src/content/docs/docs/next/tools/dashboard.mdx` documents the dashboard remote-results setup path.
diff --git a/evals/agentv-dev/skills/README.md b/evals/agentv-dev/skills/README.md
index d0b9fac75..0abf2691e 100644
--- a/evals/agentv-dev/skills/README.md
+++ b/evals/agentv-dev/skills/README.md
@@ -14,7 +14,7 @@ live repo content directly:
catalog and command surface
- `skills-data/*/SKILL.md` for the actual bundled skill bodies shipped by the
CLI
-- `apps/web/src/content/docs/docs/getting-started/installation.mdx` for the
+- `apps/web/src/content/docs/docs/next/getting-started/installation.mdx` for the
live CLI usage examples
That keeps the suite aligned with the current repo instead of stale snapshots.
diff --git a/examples/features/composite/README.md b/examples/features/composite/README.md
index 8991c07f5..dba6cdf50 100644
--- a/examples/features/composite/README.md
+++ b/examples/features/composite/README.md
@@ -22,4 +22,4 @@ bun agentv validate examples/features/composite/evals/dataset.eval.yaml
- `evals/dataset.eval.yaml` - Test cases with composite grader patterns
- `scripts/or-aggregator.js` - Strict OR aggregator script used by `composite` examples
-- `apps/web/src/content/docs/docs/graders/composite.mdx` - Detailed AND/OR and strict-OR composition guidance
+- `apps/web/src/content/docs/docs/next/graders/composite.mdx` - Detailed AND/OR and strict-OR composition guidance
diff --git a/packages/sdk/README.md b/packages/sdk/README.md
index 43c6ed4fa..fe77b2488 100644
--- a/packages/sdk/README.md
+++ b/packages/sdk/README.md
@@ -252,7 +252,7 @@ For complete documentation including:
- Execution metrics usage
- Best practices
-See the docs site guides under `apps/web/src/content/docs/docs/graders/` or run `agentv skills get agentv-eval-writer`.
+See the docs site guides under `apps/web/src/content/docs/docs/next/graders/` or run `agentv skills get agentv-eval-writer`.
## Repository
diff --git a/plugins/agentv-self/skills/image-compress-and-docs/SKILL.md b/plugins/agentv-self/skills/image-compress-and-docs/SKILL.md
index 29dd7ae7a..e70fe79ff 100644
--- a/plugins/agentv-self/skills/image-compress-and-docs/SKILL.md
+++ b/plugins/agentv-self/skills/image-compress-and-docs/SKILL.md
@@ -91,7 +91,7 @@ ls -lh "$ASSETS_DIR"
## Step 3 — Update Astro Docs
-Docs live at: `apps/web/src/content/docs/docs/`
+Docs live at: `apps/web/src/content/docs/docs/next/`
Assets live at: `apps/web/src/assets/screenshots/`
**Import pattern** (Astro `` for automatic optimization):
diff --git a/scripts/snapshot-docs-version.mjs b/scripts/snapshot-docs-version.mjs
index ed4e39b08..3d05638b3 100644
--- a/scripts/snapshot-docs-version.mjs
+++ b/scripts/snapshot-docs-version.mjs
@@ -6,11 +6,14 @@ import path from 'node:path';
import { fileURLToPath } from 'node:url';
import { promisify } from 'node:util';
+const VERSION_SLUG_PATTERN = /^v\d+\.\d+\.\d+$/;
+const LIVE_SUBDIR = 'next';
+
const version = process.argv[2];
const sourceRef = process.argv[3] ?? version;
const execFile = promisify(execFileWithCallback);
-if (!version || !/^v\d+\.\d+\.\d+$/.test(version)) {
+if (!version || !VERSION_SLUG_PATTERN.test(version)) {
console.error('Usage: node scripts/snapshot-docs-version.mjs vX.Y.Z [source-ref]');
process.exit(1);
}
@@ -20,7 +23,6 @@ const docsRoot = path.join(repoRoot, 'apps/web/src/content/docs/docs');
const snapshotRoot = path.join(docsRoot, version);
const routeManifestPath = path.join(repoRoot, `apps/web/src/data/docs-${version}-routes.json`);
const docsTreePath = 'apps/web/src/content/docs/docs';
-const ignoredTopLevel = new Set([version]);
const tempRoot = await mkdtemp(path.join(tmpdir(), 'agentv-docs-snapshot-'));
const archivePath = path.join(tempRoot, 'docs.tar');
@@ -31,8 +33,12 @@ await rm(snapshotRoot, { recursive: true, force: true });
await mkdir(snapshotRoot, { recursive: true });
await mkdir(sourceRoot, { recursive: true });
+const liveRoot = path.join(extractedDocsRoot, LIVE_SUBDIR);
+
try {
- await execFile('git', ['cat-file', '-e', `${sourceRef}:${docsTreePath}`], { cwd: repoRoot });
+ await execFile('git', ['cat-file', '-e', `${sourceRef}:${docsTreePath}/${LIVE_SUBDIR}`], {
+ cwd: repoRoot,
+ });
const { stdout } = await execFile('git', ['archive', '--format=tar', sourceRef, docsTreePath], {
cwd: repoRoot,
encoding: 'buffer',
@@ -42,14 +48,16 @@ try {
await execFile('tar', ['-xf', archivePath, '-C', sourceRoot]);
} catch (error) {
await rm(tempRoot, { recursive: true, force: true });
- throw error;
+ throw new Error(
+ `'${sourceRef}' has no live docs at ${docsTreePath}/${LIVE_SUBDIR}. Snapshots are cut from the live 'next' tree.`,
+ { cause: error },
+ );
}
-const docsEntries = await readdir(extractedDocsRoot, { withFileTypes: true });
-for (const entry of docsEntries) {
- if (ignoredTopLevel.has(entry.name)) continue;
- if (/^v\d+\.\d+\.\d+$/.test(entry.name)) continue;
- await cp(path.join(extractedDocsRoot, entry.name), path.join(snapshotRoot, entry.name), {
+const liveEntries = await readdir(liveRoot, { withFileTypes: true });
+for (const entry of liveEntries) {
+ if (VERSION_SLUG_PATTERN.test(entry.name)) continue;
+ await cp(path.join(liveRoot, entry.name), path.join(snapshotRoot, entry.name), {
recursive: true,
});
}
@@ -119,20 +127,12 @@ function rewriteSnapshotContent(source, version, slug, archiveRouteSet) {
.replace(/href='\/docs\/([^'#]*)(#[^']+)?'/g, (match, targetPath, hash = '') => {
const archiveHref = toArchiveHref(version, targetPath, hash);
return archiveRouteSet.has(stripHash(archiveHref)) ? `href='${archiveHref}'` : match;
- })
- .replaceAll("from '../../../../assets/", "from '../../../../../assets/")
- .replaceAll('from "../../../../assets/', 'from "../../../../../assets/')
- .replaceAll('](../../../../examples/', '](../../../../../examples/');
+ });
return upsertFrontmatter(rewritten, {
slug: [`slug: ${slug}`],
editUrl: ['editUrl: false'],
pagefind: ['pagefind: false'],
- banner: [
- 'banner:',
- ' content: |',
- ` You are viewing the frozen ${version} docs. Use Canary docs for the current development version.`,
- ],
});
}