v2: Tool.execute and MCP.callTool spans no longer carry tool.name / tool.call_id
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 76/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bien especificado
- Estado de actividad
- Activo
- Stack tecnológico
- typescript
- Área
- observability
Línea de trabajo
Empieza con packages/core/src/tool.ts y packages/core/src/mcp/index.ts, donde, según el issue, se crean los spans, y comprueba cómo se registraron los atributos de v1 en #22531 y #25452. Los valores que hay que añadir ya están en el ámbito, y el hook tool.execute.after también los recibe. El trabajo estará terminado cuando los spans de tool y MCP expongan los atributos solicitados de tool, llamada, sesión, operación y servidor en trazas OTLP.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Description
In v2, the Tool.execute and MCP.callTool spans no longer say which tool ran. In v1 they had tool.name and tool.call_id (#22531, and #25452 for MCP and plugin tools). Since the v2 rewrite, Tool.execute in packages/core/src/tool.ts is a bare Effect.fn("Tool.execute"), and MCP.callTool in packages/core/src/mcp/index.ts has no attributes either.
In a trace backend, every tool call now looks the same: status and duration only. The only way to tell which tool a span ran is the error message, and only when the call fails (MCP tool "github-get_file_contents" on server "litellm" failed: …).
Expected: the attributes from v1, ideally also with the OTel GenAI names, so GenAI-aware backends can show the calls:
tool.name/gen_ai.tool.nametool.call_id/gen_ai.tool.call.idgen_ai.operation.name = execute_toolsession.id- for MCP: the server name, e.g.
mcp.server.name
The values are already in scope there (name, context.id, context.sessionID, input.server). The tool.execute.after hook receives them too.
Related: #46856 (trace context on MCP calls). Together these two would let MCP calls show up properly inside the agent trace.
Plugins
none
OpenCode version
2.1.2 (checked the code on v2.2.5)
Steps to reproduce
- Set
OTEL_EXPORTER_OTLP_ENDPOINTand runopencode runwith a prompt that uses a few tools (built-in and MCP). - Open the trace in any OTLP backend.
Tool.execute/MCP.callToolspans have notool.nameor call id. On v1 they did.
Operating System
Linux (container)
Terminal
n/a (opencode run)
- Lenguaje dominante
- TypeScript
- Estrellas
- 224k
- Forks
- 30k
- Merge medio
- 5 h 25 min
- PR fusionados (30 d)
- 494
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de anomalyco/opencode
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 76/100
anomalyco/opencode#62322 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
docs: AgentEditor.update creates missing agents, but the plugin docs don't say soPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 76/100
anomalyco/opencode#62210 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
tui: /models drops provider grouping when the session location differs from the default locationQuizá libre de nuevo Un pull request para esta issue se cerró sin fusionarse. Abiertoreproduced
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
anomalyco/opencode#62105 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
anomalyco/opencode#62046 · 4 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
anomalyco/opencode#61897 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de anomalyco/opencode
Issues similares
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Dificultad 1/5 Menos de una hora Aptitud para principiantes 83/100
lingdojo/kana-dojo#33701 · 1 comentario · 5 reacciones ·
Los mantenedores suelen responder en 1 día
-
tech-debt
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
rookslog/zlibrary-mcp#408 ·
Los mantenedores suelen responder en 1 día
-
mp4box.js — 20-byte `sgpd` box with large `entry_count` causes unbounded loop and heap OOM abortAbierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 77/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
status: needs triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 64/100
mastra-ai/mastra#29641 · 1 comentario ·
Los mantenedores suelen responder en 1 día