Semantic conventions
OpenTelemetry semantic convention constants.
Variables
GEN_AI_SYSTEM
constGEN_AI_SYSTEM:"gen_ai.system"="gen_ai.system"
Defined in: src/observability/_genaiSemconv.ts:21
Provider id (e.g. openai, anthropic, openrouter, litellm).
GEN_AI_REQUEST_MODEL
constGEN_AI_REQUEST_MODEL:"gen_ai.request.model"="gen_ai.request.model"
Defined in: src/observability/_genaiSemconv.ts:24
Requested model slug, exactly as sent on the wire.
GEN_AI_RESPONSE_MODEL
constGEN_AI_RESPONSE_MODEL:"gen_ai.response.model"="gen_ai.response.model"
Defined in: src/observability/_genaiSemconv.ts:27
Resolved model slug from the response, when the provider echoes one.
GEN_AI_RESPONSE_FINISH_REASON
constGEN_AI_RESPONSE_FINISH_REASON:"gen_ai.response.finish_reasons"="gen_ai.response.finish_reasons"
Defined in: src/observability/_genaiSemconv.ts:30
Finish reason(s); we always emit a single-element list.
GEN_AI_USAGE_PROMPT_TOKENS
constGEN_AI_USAGE_PROMPT_TOKENS:"gen_ai.usage.input_tokens"="gen_ai.usage.input_tokens"
Defined in: src/observability/_genaiSemconv.ts:32
GEN_AI_USAGE_COMPLETION_TOKENS
constGEN_AI_USAGE_COMPLETION_TOKENS:"gen_ai.usage.output_tokens"="gen_ai.usage.output_tokens"
Defined in: src/observability/_genaiSemconv.ts:33
GEN_AI_OPERATION_NAME
constGEN_AI_OPERATION_NAME:"gen_ai.operation.name"="gen_ai.operation.name"
Defined in: src/observability/_genaiSemconv.ts:36
Operation. We use chat for both root and subagent LM calls.
SPAN_AGENT_RUN
constSPAN_AGENT_RUN:"maniac.agent.run"="maniac.agent.run"
Defined in: src/observability/_genaiSemconv.ts:41
SPAN_LM_CALL
constSPAN_LM_CALL:"maniac.lm_call"="maniac.lm_call"
Defined in: src/observability/_genaiSemconv.ts:42
SPAN_SUBAGENT
constSPAN_SUBAGENT:"maniac.subagent"="maniac.subagent"
Defined in: src/observability/_genaiSemconv.ts:44
v1 inner-agent / toolset-subagent boundary span. C5 removes.
SPAN_AGENT
constSPAN_AGENT:"maniac.agent"="maniac.agent"
Defined in: src/observability/_genaiSemconv.ts:50
v2 inner-agent boundary span. Used for agent_as_tool(spec) and
Toolset.as_delegated() invocations.
SPAN_PARALLEL
constSPAN_PARALLEL:"maniac.parallel"="maniac.parallel"
Defined in: src/observability/_genaiSemconv.ts:52
SPAN_TOOL_CALL
constSPAN_TOOL_CALL:"maniac.tool_call"="maniac.tool_call"
Defined in: src/observability/_genaiSemconv.ts:53
EVENT_CELL
constEVENT_CELL:"maniac.cell"="maniac.cell"
Defined in: src/observability/_genaiSemconv.ts:56
EVENT_TOKEN
constEVENT_TOKEN:"maniac.token"="maniac.token"
Defined in: src/observability/_genaiSemconv.ts:57
EVENT_MEMORY
constEVENT_MEMORY:"maniac.memory"="maniac.memory"
Defined in: src/observability/_genaiSemconv.ts:58
EVENT_FINAL
constEVENT_FINAL:"maniac.final"="maniac.final"
Defined in: src/observability/_genaiSemconv.ts:59
EVENT_ERROR
constEVENT_ERROR:"maniac.error"="maniac.error"
Defined in: src/observability/_genaiSemconv.ts:60
EVENT_RETRY
constEVENT_RETRY:"maniac.retry"="maniac.retry"
Defined in: src/observability/_genaiSemconv.ts:61
EVENT_GUARDRAIL
constEVENT_GUARDRAIL:"maniac.guardrail"="maniac.guardrail"
Defined in: src/observability/_genaiSemconv.ts:62
EVENT_STEP_BEFORE
constEVENT_STEP_BEFORE:"maniac.step.before"="maniac.step.before"
Defined in: src/observability/_genaiSemconv.ts:63
EVENT_STEP_AFTER
constEVENT_STEP_AFTER:"maniac.step.after"="maniac.step.after"
Defined in: src/observability/_genaiSemconv.ts:64
EVENT_STEP_STOPPED
constEVENT_STEP_STOPPED:"maniac.step.stopped"="maniac.step.stopped"
Defined in: src/observability/_genaiSemconv.ts:65
EVENT_TOOL_CALL_ARGUMENTS_DELTA
constEVENT_TOOL_CALL_ARGUMENTS_DELTA:"maniac.tool_call.arguments_delta"="maniac.tool_call.arguments_delta"
Defined in: src/observability/_genaiSemconv.ts:75
Span event name used for normalized tool_call_arguments_delta
events. Attached to the enclosing maniac.lm_call span (where the
underlying provider stream is consumed) when recordTokens=true,
so backends that already opt into chatty per-token visibility see
the streamed tool-call args alongside per-token text deltas. Off
by default since high-frequency argument streams are as chatty as
text-token streams.
ATTR_AGENT_ID
constATTR_AGENT_ID:"maniac.agent.id"="maniac.agent.id"
Defined in: src/observability/_genaiSemconv.ts:78
ATTR_AGENT_PRINCIPAL
constATTR_AGENT_PRINCIPAL:"maniac.agent.principal"="maniac.agent.principal"
Defined in: src/observability/_genaiSemconv.ts:79
ATTR_AGENT_FINAL_SOURCE
constATTR_AGENT_FINAL_SOURCE:"maniac.agent.final_source"="maniac.agent.final_source"
Defined in: src/observability/_genaiSemconv.ts:80
ATTR_AGENT_ITERATIONS
constATTR_AGENT_ITERATIONS:"maniac.agent.iterations"="maniac.agent.iterations"
Defined in: src/observability/_genaiSemconv.ts:81
ATTR_LM_SCOPE
constATTR_LM_SCOPE:"maniac.lm.scope"="maniac.lm.scope"
Defined in: src/observability/_genaiSemconv.ts:84
ATTR_LM_ITERATION
constATTR_LM_ITERATION:"maniac.lm.iteration"="maniac.lm.iteration"
Defined in: src/observability/_genaiSemconv.ts:85
ATTR_LM_COST_USD
constATTR_LM_COST_USD:"maniac.lm.cost_usd"="maniac.lm.cost_usd"
Defined in: src/observability/_genaiSemconv.ts:86
ATTR_SUBAGENT_TOOLSET
constATTR_SUBAGENT_TOOLSET:"maniac.subagent.toolset"="maniac.subagent.toolset"
Defined in: src/observability/_genaiSemconv.ts:89
ATTR_SUBAGENT_CHEAP_PATH
constATTR_SUBAGENT_CHEAP_PATH:"maniac.subagent.cheap_path"="maniac.subagent.cheap_path"
Defined in: src/observability/_genaiSemconv.ts:90
ATTR_SUBAGENT_PROMPT
constATTR_SUBAGENT_PROMPT:"maniac.subagent.prompt"="maniac.subagent.prompt"
Defined in: src/observability/_genaiSemconv.ts:91
ATTR_SUBAGENT_DIRECT_PATH
constATTR_SUBAGENT_DIRECT_PATH:"maniac.subagent.direct_path"="maniac.subagent.direct_path"
Defined in: src/observability/_genaiSemconv.ts:99
True when the subagent span wraps an AgentToolset direct-path
delegation (a supervisor agent calling a worker), so backends can
distinguish supervisor delegations from regular toolset subagents.
Mutually exclusive with ATTR_SUBAGENT_CHEAP_PATH.
ATTR_SUBAGENT_INNER_AGENT_ID
constATTR_SUBAGENT_INNER_AGENT_ID:"maniac.subagent.inner_agent_id"="maniac.subagent.inner_agent_id"
Defined in: src/observability/_genaiSemconv.ts:105
Set alongside ATTR_SUBAGENT_DIRECT_PATH to identify which inner
agent spec the supervisor delegated to.
ATTR_AGENT_INNER_ID
constATTR_AGENT_INNER_ID:"maniac.agent.inner_id"="maniac.agent.inner_id"
Defined in: src/observability/_genaiSemconv.ts:109
The inner agent's spec.id for an agent[start]/[final] span.
ATTR_AGENT_TOOL
constATTR_AGENT_TOOL:"maniac.agent.tool"="maniac.agent.tool"
Defined in: src/observability/_genaiSemconv.ts:115
The wrapper Tool's name (lets consumers disambiguate multiple
wrappers around the same inner agent).
ATTR_AGENT_PROMPT
constATTR_AGENT_PROMPT:"maniac.agent.prompt"="maniac.agent.prompt"
Defined in: src/observability/_genaiSemconv.ts:118
The natural-language prompt passed to the inner agent.
ATTR_TOOL_TOOLSET
constATTR_TOOL_TOOLSET:"maniac.tool.toolset"="maniac.tool.toolset"
Defined in: src/observability/_genaiSemconv.ts:120
ATTR_TOOL_NAME
constATTR_TOOL_NAME:"maniac.tool.name"="maniac.tool.name"
Defined in: src/observability/_genaiSemconv.ts:121
ATTR_TOOL_OK
constATTR_TOOL_OK:"maniac.tool.ok"="maniac.tool.ok"
Defined in: src/observability/_genaiSemconv.ts:122
ATTR_TOOL_ERROR
constATTR_TOOL_ERROR:"maniac.tool.error"="maniac.tool.error"
Defined in: src/observability/_genaiSemconv.ts:123
ATTR_TOOL_ALLOWED
constATTR_TOOL_ALLOWED:"maniac.tool.allowed"="maniac.tool.allowed"
Defined in: src/observability/_genaiSemconv.ts:124
ATTR_TOOL_DENY_REASON
constATTR_TOOL_DENY_REASON:"maniac.tool.deny_reason"="maniac.tool.deny_reason"
Defined in: src/observability/_genaiSemconv.ts:125
ATTR_PARALLEL_FANOUT
constATTR_PARALLEL_FANOUT:"maniac.parallel.n"="maniac.parallel.n"
Defined in: src/observability/_genaiSemconv.ts:128
ATTR_CELL_ELAPSED_MS
constATTR_CELL_ELAPSED_MS:"maniac.cell.elapsed_ms"="maniac.cell.elapsed_ms"
Defined in: src/observability/_genaiSemconv.ts:131
ATTR_CELL_STDOUT_LEN
constATTR_CELL_STDOUT_LEN:"maniac.cell.stdout_len"="maniac.cell.stdout_len"
Defined in: src/observability/_genaiSemconv.ts:132
ATTR_CELL_STDERR_LEN
constATTR_CELL_STDERR_LEN:"maniac.cell.stderr_len"="maniac.cell.stderr_len"
Defined in: src/observability/_genaiSemconv.ts:133
ATTR_RETRY_ATTEMPT
constATTR_RETRY_ATTEMPT:"maniac.retry.attempt"="maniac.retry.attempt"
Defined in: src/observability/_genaiSemconv.ts:136
ATTR_RETRY_MAX_ATTEMPTS
constATTR_RETRY_MAX_ATTEMPTS:"maniac.retry.max_attempts"="maniac.retry.max_attempts"
Defined in: src/observability/_genaiSemconv.ts:137
ATTR_RETRY_DELAY_S
constATTR_RETRY_DELAY_S:"maniac.retry.delay_s"="maniac.retry.delay_s"
Defined in: src/observability/_genaiSemconv.ts:138
ATTR_RETRY_ERROR_CLASS
constATTR_RETRY_ERROR_CLASS:"maniac.retry.error_class"="maniac.retry.error_class"
Defined in: src/observability/_genaiSemconv.ts:139
ATTR_RETRY_ERROR_MESSAGE
constATTR_RETRY_ERROR_MESSAGE:"maniac.retry.error_message"="maniac.retry.error_message"
Defined in: src/observability/_genaiSemconv.ts:140
ATTR_STEP_ITERATION
constATTR_STEP_ITERATION:"maniac.step.iteration"="maniac.step.iteration"
Defined in: src/observability/_genaiSemconv.ts:143
ATTR_STEP_REWROTE
constATTR_STEP_REWROTE:"maniac.step.rewrote"="maniac.step.rewrote"
Defined in: src/observability/_genaiSemconv.ts:144
ATTR_STEP_SOURCE
constATTR_STEP_SOURCE:"maniac.step.source"="maniac.step.source"
Defined in: src/observability/_genaiSemconv.ts:145
ATTR_STEP_HOOK
constATTR_STEP_HOOK:"maniac.step.hook"="maniac.step.hook"
Defined in: src/observability/_genaiSemconv.ts:146
ATTR_STEP_REASON
constATTR_STEP_REASON:"maniac.step.reason"="maniac.step.reason"
Defined in: src/observability/_genaiSemconv.ts:147
ATTR_STEP_ELAPSED_MS
constATTR_STEP_ELAPSED_MS:"maniac.step.elapsed_ms"="maniac.step.elapsed_ms"
Defined in: src/observability/_genaiSemconv.ts:148
ATTR_TOOL_CALL_ID
constATTR_TOOL_CALL_ID:"maniac.tool_call.id"="maniac.tool_call.id"
Defined in: src/observability/_genaiSemconv.ts:153
ATTR_TOOL_CALL_INDEX
constATTR_TOOL_CALL_INDEX:"maniac.tool_call.index"="maniac.tool_call.index"
Defined in: src/observability/_genaiSemconv.ts:154
ATTR_TOOL_CALL_ARGUMENTS_DELTA
constATTR_TOOL_CALL_ARGUMENTS_DELTA:"maniac.tool_call.arguments_delta"="maniac.tool_call.arguments_delta"
Defined in: src/observability/_genaiSemconv.ts:155
ATTR_TOOL_CALL_ARGUMENTS_DELTA_SEQUENCE
constATTR_TOOL_CALL_ARGUMENTS_DELTA_SEQUENCE:"maniac.tool_call.arguments_delta.sequence"="maniac.tool_call.arguments_delta.sequence"
Defined in: src/observability/_genaiSemconv.ts:156
Functions
genAiSystemFromSlug()
genAiSystemFromSlug(
slug):string
Defined in: src/observability/_genaiSemconv.ts:167
Best-effort GenAI provider id from an maniac model slug.
Adapters set model.id to e.g. openai:gpt-4o-mini,
openrouter:anthropic/claude-3.5-sonnet, mock-scripted. The
slug field is the underlying provider slug. We pick the first
path segment as the provider id. Unknown shapes fall back to
unknown; OTel allows free-form strings here.
Parameters
slug
string | null | undefined
Returns
string