LangChain Reference home pageLangChain ReferenceLangChain Reference
  • GitHub
  • Main Docs
Deep Agents
LangChain
LangGraph
Integrations
LangSmith
LangChain
  • Browser
  • Universal
  • Hub
  • Node
  • Load
  • Serializable
  • Encoder Backed
  • File System
  • In Memory
  • Tools
LangChain Core
  • Agents
  • Caches
  • Base
  • Dispatch
  • Web
  • Manager
  • Promises
  • Chat History
  • Context
  • Base
  • Langsmith
  • Documents
  • Embeddings
  • Errors
  • Example Selectors
  • Indexing
  • Base
  • Chat Models
  • Compat
  • Event
  • Llms
  • Openai Completions Stream
  • Profile
  • Stream
  • Structured Output
  • Load
  • Serializable
  • Memory
  • Messages
  • Tool
  • Output Parsers
  • Openai Functions
  • Openai Tools
  • Outputs
  • Prompt Values
  • Prompts
  • Retrievers
  • Document Compressors
  • Runnables
  • Graph
  • Singletons
  • Stores
  • Structured Query
  • Testing
  • Tools
  • Base
  • Console
  • Log Stream
  • Run Collector
  • Tracer Langchain
  • Stream
  • Async Caller
  • Chunk Array
  • Context
  • Env
  • Event Source Parse
  • Format
  • Function Calling
  • Gateway
  • Hash
  • Json Patch
  • Json Schema
  • Math
  • Ssrf
  • Standard Schema
  • Stream
  • Testing
  • Tiktoken
  • Types
  • Uuid
  • Vectorstores
Text Splitters
MCP Adapters
⌘I

LangChain Assistant

Ask a question to get started

Enter to send•Shift+Enter new line

Menu

LangChain
BrowserUniversalHubNodeLoadSerializableEncoder BackedFile SystemIn MemoryTools
LangChain Core
AgentsCachesBaseDispatchWebManagerPromisesChat HistoryContextBaseLangsmithDocumentsEmbeddingsErrorsExample SelectorsIndexingBaseChat ModelsCompatEventLlmsOpenai Completions StreamProfileStreamStructured OutputLoadSerializableMemoryMessagesToolOutput ParsersOpenai FunctionsOpenai ToolsOutputsPrompt ValuesPromptsRetrieversDocument CompressorsRunnablesGraphSingletonsStoresStructured QueryTestingToolsBaseConsoleLog StreamRun CollectorTracer LangchainStreamAsync CallerChunk ArrayContextEnvEvent Source ParseFormatFunction CallingGatewayHashJson PatchJson SchemaMathSsrfStandard SchemaStreamTestingTiktokenTypesUuidVectorstores
Text Splitters
MCP Adapters
Language
Theme
JavaScript@langchain/coremessagesToolMessageFields
Interfaceā—Since v1.0

ToolMessageFields

Copy
interface ToolMessageFields

Bases

BaseMessageFields<TStructure, "tool">

Properties

property
artifact: any

Artifact of the Tool execution which is not meant to be sent to the model.

Should only be specified if it is different from the message content, e.g. if only a subset of the full tool output is being passed as message content but the full output is needed in other parts of the code.

property
content: $InferToolOutputs<TStructure> extends TOutput ? [TOutput] extends [never] ? string | ContentBlock | Text[] : [unknown] extends [TOutput] ? string | ContentBlock | Text[] : string | ContentBlock | Text[] | TOutput : string | ContentBlock | Text[]
property
contentBlocks: Standard[]
property
id: string

Unique identifier for this message

property
metadata: Record<string, unknown>
property
name: string

An optional name for the message participant.

This property is primarily used to:

  1. Identify agent roles in multi-agent systems: When multiple agents collaborate, setting name helps distinguish which agent produced a message, preventing confusion about who said what.

  2. Pass participant names to model providers: Some providers (notably OpenAI, e.g. see OpenAI Chat Completions API) use this field to differentiate between participants with the same role. For example, when using OpenAI's Chat Completions API, the name is included in the message payload sent to the model.

Copy
// Setting name on an AIMessage to identify the agent
const message = new AIMessage({
  content: "I'll handle the calendar scheduling.",
  name: "calendar_agent"
});

// In a multi-agent system, this helps track message origins
const researcherMessage = new AIMessage({
  content: "Here are the findings...",
  name: "researcher"
});
const writerMessage = new AIMessage({
  content: "I've drafted the report.",
  name: "writer"
});
property
response_metadata: Partial<$InferResponseMetadata<TStructure, "tool">>
property
status: "success" | "error"
property
tool_call_id: string
deprecatedproperty
additional_kwargs: __type
View source on GitHub