diff --git a/web/src/locales/en.ts b/web/src/locales/en.ts
index 9329c2c61..bd126f115 100644
--- a/web/src/locales/en.ts
+++ b/web/src/locales/en.ts
@@ -1925,6 +1925,7 @@ The Indexer will store the content in the corresponding data structures for the
keywords: 'Keywords',
questions: 'Questions',
metadata: 'Metadata',
+ toc: 'Table of contents',
fieldName: 'Result destination',
prompts: {
system: {
diff --git a/web/src/pages/agent/constant/pipeline.tsx b/web/src/pages/agent/constant/pipeline.tsx
index 849340bfa..c799cf959 100644
--- a/web/src/pages/agent/constant/pipeline.tsx
+++ b/web/src/pages/agent/constant/pipeline.tsx
@@ -85,6 +85,7 @@ export enum ContextGeneratorFieldName {
Keywords = 'keywords',
Questions = 'questions',
Metadata = 'metadata',
+ TableOfContents = 'toc',
}
export const FileId = 'File'; // BeginId
diff --git a/web/src/pages/agent/form/extractor-form/index.tsx b/web/src/pages/agent/form/extractor-form/index.tsx
index 391d8c09e..78480d665 100644
--- a/web/src/pages/agent/form/extractor-form/index.tsx
+++ b/web/src/pages/agent/form/extractor-form/index.tsx
@@ -76,19 +76,23 @@ const ExtractorForm = ({ node }: INextOperatorForm) => {
>
)}
-
-
-
-
-
-
+ {form.getValues('field_name') !== 'toc' && (
+ <>
+
+
+
+
+
+
+ >
+ )}
{visible && (