智能体

读取会话上下文(扩展)

读取最近一次上下文测量,以及当前所选模型的窗口和压缩阈值。

GET /agent/v1/sessions/{session_id}/context● 支持

请求参数

  • session_idstring必填

    path: Session id (sesn_...), as returned by sessions.create or sessions.list. The same id is also accepted as the session_id query parameter on resource and thread calls, where it must equal the path value.

返回

200

扩展:仅在 /agent/v1 提供,形状参照 Claude Agent SDK getContextUsage(),字段使用 snake_case。detail 固定为 summary:总量优先使用上次模型实测,各来源按本地估算占比摊分,used 分类之和等于 total_tokens。categories 只列非零来源,按 kind(used/free/buffer/deferred)判断用途。key 是稳定来源标识扩展;客户端须容忍未知 key 和新增来源,未知名称回退显示 name。MCP 按服务器归组,插件按 id 归组,摘要单独计量。excluded_items 暂为零。尚无测量时 total_tokens、total_tokens_source、measured_at 为 null,categories 为空,明细为零或空数组。切换模型后 max_tokens、auto_compact_threshold 与 free/buffer 立即按新模型重算,保留最近测量值。窗口未知或自动压缩熔断时 is_auto_compact_enabled 为 false。例如 model.thinking 为 {efforts: [high, xhigh], can_disable: true, default_effort: high}。model.thinking 返回 efforts(支持的档位)、can_disable(是否允许 none)及 default_effort(模型默认档位,可为 null);能力未知时整个 thinking 为 null。会话不存在或调用者不可见时返回 404。

错误按 Anthropic 错误格式返回(type / message / request_id),参见 错误码

响应

HTTP 200

Current model and latest context measurement

application/json

名称类型说明
typestringAlways `session_context`. Snapshot of a session's context window usage.
session_idstringSession whose context this snapshot describes.
modelobjectModel of the session and its context window facts.
model.idstringIdentifier of the object, as returned by the API; pass it in the path of follow-up calls on the same resource.
model.display_namestringHuman-readable name of the model.
model.thinkingobject | nullThinking capability of the model: supported efforts, whether thinking can be disabled, and the default. Null when the capability is unknown.
total_tokensnumber | nullTokens currently occupying the context window; null before the first measurement.
total_tokens_sourcestring | nullWhether total_tokens is the provider-reported input usage (actual) or a local estimate (estimated); null before the first measurement.
max_tokensnumber | nullContext window of the model in tokens; null when the model does not state one.
max_input_tokensnumber | nullMaximum input tokens the model accepts per request; null when not stated.
percentagenumberShare of the context window in use, as a whole-number percent; 0 when the window or usage is unknown.
auto_compact_thresholdnumber | nullToken count at which automatic compaction starts; null when the window is unknown.
is_auto_compact_enabledbooleanWhether automatic compaction is enabled for this session.
clear_tool_results_atnumberToken count at which old tool results are cleared from the context.
detailstringLevel of detail of the snapshot.
categoriesarray<object>Context usage by category; each row has a stable key and a kind.
categories[].keystringPraxis extension: stable source identifier (system, tools, mcp:<server>, plugin:<id>, messages, summary, free, buffer). Clients must tolerate unknown keys and newly added sources; classify rows by kind, not key or name.
categories[].namestringDisplay name of the category.
categories[].tokensnumberTokens used by the category.
categories[].kindstringHow the category counts against the window.
mcp_toolsarray<object>Tokens spent on the tool definitions of each MCP server.
mcp_tools[].namestringName of the MCP tool.
mcp_tools[].server_namestringName of the MCP server that provides the tool.
mcp_tools[].tokensnumberTokens used by the tool definition.
plugin_blocksarray<object>Tokens spent on context blocks injected by each mod.
plugin_blocks[].namestringName of the mod that injected the block.
plugin_blocks[].tokensnumberTokens used by the block.
message_breakdownobjectTokens in the conversation messages, split by role and tool traffic.
message_breakdown.user_message_tokensnumberTokens of user messages.
message_breakdown.assistant_message_tokensnumberTokens of assistant text messages.
message_breakdown.tool_call_tokensnumberTokens of tool-call arguments.
message_breakdown.tool_result_tokensnumberTokens of tool results.
message_breakdown.reasoning_tokensnumberTokens of reasoning content.
message_breakdown.tool_calls_by_typearray<object>Tool-call and tool-result tokens grouped by tool name.
compaction_summaryobject | nullTokens held by the latest compaction summary; null when the session was never compacted.
compaction_summary.tokensnumberTokens of the compaction summary.
excluded_itemsobjectItems removed from the context for content safety, kept for audit only and not counted as usage.
excluded_items.countnumberNumber of excluded items.
excluded_items.tokensnumberTokens of the excluded items.
measured_atstring | nullRFC 3339 time of the measurement; null before the first measurement.