Skip to content
0 ms400 ms800 ms1200 ms1600 msjaeger-ui · assistant.turnjaeger-ui · assistant.turn · 1.80 sai-gateway · ws.recv session/promptai-gateway · ws.recv session/prompt · 32 msai-gateway · acp.session.promptai-gateway · acp.session.prompt · 1.72 sai-gateway · mcp session initai-gateway · mcp session init · 12 msagent-sidecar · invoke_agent claudeagent-sidecar · invoke_agent claude · 1.68 sagent-sidecar · chat claude-sonnetagent-sidecar · chat claude-sonnet · 450 msagent-sidecar · tool_choice reasoningagent-sidecar · tool_choice reasoning · 110 msagent-sidecar · execute_tool read_ski…agent-sidecar · execute_tool read_skill · 112 msai-gateway · mcp tools/call read_s…ai-gateway · mcp tools/call read_skill · 100 msjaeger-mcp · read_skill catalogjaeger-mcp · read_skill catalog · 20 msskills-fs · ReadFile skills/READM…skills-fs · ReadFile skills/README.md · 7 msjaeger-mcp · read_skill slow-tracejaeger-mcp · read_skill slow-trace · 35 msskills-fs · ReadFile slow-trace/S…skills-fs · ReadFile slow-trace/SKILL.md · 20 msagent-sidecar · chat claude-sonnetagent-sidecar · chat claude-sonnet · 350 msagent-sidecar · tool_choice reasoningagent-sidecar · tool_choice reasoning · 95 msagent-sidecar · execute_tool search_t…agent-sidecar · execute_tool search_traces · 240 msai-gateway · mcp tools/call search…ai-gateway · mcp tools/call search_traces · 230 msjaeger-query · FindTracesjaeger-query · FindTraces · 220 msclickhouse · SELECT spans WHERE se…clickhouse · SELECT spans WHERE service = ? · 150 msclickhouse · merge partsclickhouse · merge parts · 60 msjaeger-query · adjust spansjaeger-query · adjust spans · 50 msagent-sidecar · execute_tool get_traceagent-sidecar · execute_tool get_trace · 140 msai-gateway · mcp tools/call get_tr…ai-gateway · mcp tools/call get_trace · 130 msjaeger-query · GetTracejaeger-query · GetTrace · 120 msclickhouse · SELECT * FROM spans W…clickhouse · SELECT * FROM spans WHERE trace_id = ? · 95 msagent-sidecar · chat claude-sonnetagent-sidecar · chat claude-sonnet · 325 msai-gateway · ws.send session/updateai-gateway · ws.send session/update · 14 msjaeger-ui · render markdownjaeger-ui · render markdown · 38 ms

LFX Mentee · CNCF / Jaeger

Soumya Raikwar

I build, evaluate and trace AI agents.

LFX Mentee at the CNCF, working on Jaeger. I built Jaeger's MCP skills framework, made Jaeger trace its own agents, and found out why agents skip the tools you give them.

  • Go
  • Python
  • CNCF open source
  • MCP

trace a3f1c9e2d47b8e05 · 28 spans · 7 services · 1.80 s

scroll to open the laptop

46

merged PRs

in other people's repos, as of 10 Oct 2026

28

merged in Jaeger + OpenTelemetry

jaeger, jaeger-ui, otel-collector, otel-collector-contrib

0/5 → 5/5

skill discovery

two agent harnesses, after rewriting tool descriptions

3

agent sidecars

Gemini (Google ADK), Claude, Goose on one framework

Featured work · Jaeger

The Jaeger build, in order.

LFX Mentorship, Jun 2026 – Sep 2026. Mentors: Yuri Shkuro (Jaeger creator) and Jonah Kowall. Built the Jaeger AI Self-Service Skills Framework: an MCP tool that lets AI agents load expert trace-diagnosis playbooks on demand, an agent-agnostic gateway over ACP, and the tracing that lets Jaeger observe its own agents.

  1. 01read_skill

    read_skill MCP tool

    Three-level progressive disclosure: catalog → sub-skill → references. An agent loads only the playbook it needs.

    • Go. Handler depends only on fs.FS, secured with fs.ValidPath and os.OpenRoot.
    • Pure MCP, so zero sidecar changes: any MCP client gets skills for free.
  2. 02acp

    Agent-agnostic gateway over ACP

    Fixed WebSocket message framing so any ACP agent connects, then added authenticated agents via configurable handshake headers.

    • PR #9296 preserves message boundaries when reading ACP over WebSocket.
    • PR #9395 sends configopaque.MapList headers on the agent handshake.
    • Ran Gemini (Google ADK), Claude and Goose sidecars on the same gateway.
  3. 03agent

    Self-tracing

    OpenTelemetry GenAI span attributes plus W3C traceparent across ACP. Gateway and sidecar spans join into one trace per chat turn.

    • gen_ai.operation.name, gen_ai.agent.name, gen_ai.conversation.id on agent spans.
    • gen_ai.tool.call.arguments / result on both sidecar and gateway tool-call spans.
    • The hero of this site is drawn from the same kind of trace.
  4. 04llm

    Agent evaluation

    Agents skipped skills because they judged direct telemetry tools sufficient: a reasoning problem, not a discovery problem.

    • Ruled out 3 routing fixes (0/5, 0/10).
    • 0/5 → 5/5 on both harnesses by putting disconfirming signals in the telemetry tool descriptions.
    • Two withdrawn conclusions: 36 runs misattributed after silent agent switching; a lazy-tool-loading false negative. Both are in the issue.
  5. 05query

    Trace fixtures and skill hardening

    Labeled trace fixtures and end-to-end coverage for the built-in skills. Operator skills served from ai.skills_dir.

    • PR #9263: fixtures plus E2E tests so a skill regression fails CI.
    • PR #9169: operators add playbooks under custom/ without rebuilding Jaeger.
    • PR #9194: ai.enable_mcp replaced by an optional ai.mcp config block.
  6. 06ui

    Agent chat UI

    Two jaeger-ui PRs: expandable tool-call blocks in the chat thread, Markdown rendering and panel resize.

Open source

Jaeger, OpenTelemetry, and the rest.

46 merged pull requests in 6 repositories, 29 of them in CNCF projects. Counted on Oct 10, 2026.

CNCF · graduated · Go

MCP skills framework, ACP gateway, GenAI tracing, SigV4 and custom-header auth for Elasticsearch/OpenSearch and Prometheus backends, OTLP fields in memory storage, schemagen for internal extensions.

CNCF · graduated · TypeScript / React

Trace Logs view aggregating span events; tool-call rendering, Markdown and panel resize in the assistant.

CNCF · graduated · Go

Prometheus remote-write exporter: disable_scope_info and scope-label translation; instrumentation scope attributes as labels; Elasticsearch receiver IPv6 endpoints; Elasticsearch exporter require_data_stream.

CNCF · graduated · Go

Build cleanup: removed unused registry build paths.

open source · Go

Memory engine, trust and policy layers, API integration, governance UI scaffold, ADRs, CI and DCO enforcement.

Project

CodeSight AI

Agentic RAG over any public GitHub repo

Ask plain-English questions about an unfamiliar codebase. A LangGraph agent clones and ingests the repo, chunks it with language- and symbol-aware splitting, and retrieves with ChromaDB and sentence-transformer embeddings.

  • MCP adapter tool with graceful fallback when the external server is down.
  • Generates Mermaid architecture and sequence diagrams.
  • FastAPI backend, Next.js frontend, Docker Compose, pytest suites over ingestion, chunking and retrieval.

Stack

  • Python
  • FastAPI
  • LangGraph
  • ChromaDB
  • MCP
  • Next.js
  • Docker

repo → clone → chunk (language + symbol aware) → embed → ChromaDB → LangGraph agent → answer / Mermaid

Skills

What I work with.

Languages
Go · Python
Agentic AI
MCP · ACP · LangGraph · LangChain · CrewAI · Google ADK · multi-agent orchestration · tool design · skills frameworks · agent sidecars
Evals
harness design · multi-agent / multi-model comparison · negative controls · graded rubrics · fixtures · tool-description and prompt optimisation · failure analysis
LLMs / RAG
RAG · embeddings · ChromaDB · semantic search · prompt engineering
Observability
Jaeger · OpenTelemetry · GenAI semantic conventions · distributed tracing · W3C Trace Context
Backend / tools
FastAPI · REST · WebSocket · ClickHouse · Docker · Kubernetes · Git · Linux · pytest

Education

B.Tech, Information Technology, Jabalpur Engineering College · expected Apr 2027

Certifications

About

One span, inspected.

The same view Jaeger gives a span: tags, then the log of what happened.

I'm a final-year IT student at Jabalpur Engineering College and an LFX Mentee at the CNCF, working on Jaeger under Yuri Shkuro (Jaeger's creator) and Jonah Kowall. I built the Jaeger AI Self-Service Skills Framework: an MCP tool that lets any AI agent load expert trace-diagnosis playbooks on demand, and the plumbing that makes Jaeger trace its own agents.

I got into observability by troubleshooting a slow service while learning DevOps, and stayed because the question "why did this agent do that?" turns out to be the same question as "why is this request slow?". Outside code: swimming and writing poems.

TODO: photo
slot reserved · the monogram is the only mark until then

soumya-raikwar · span2021 → now

Tags

service.name
soumya-raikwar
location
Bhopal, MP, India
role
LFX Mentee · CNCF / Jaeger
mentors
Yuri Shkuro, Jonah Kowall
languages
Go, Python
education
B.Tech IT, JEC · Apr 2027
outside_code
swimming, poems

Logs

  1. 2021Class X, Model H.S. School
  2. 2023Class XII, Chitransh K.D. Memorial H.S. School. Started B.Tech IT at Jabalpur Engineering College.
  3. 2025-09First merged PRs in CNCF projects: Harbor, then Jaeger (SigV4 auth for Prometheus and Elasticsearch backends).
  4. 2026-02OpenTelemetry Collector and Contrib: Prometheus remote-write scope labels, Elasticsearch receiver and exporter fixes, mdatagen schema resolution.
  5. 2026-03Anthropic certifications: Introduction to MCP, MCP Advanced Topics. First Jaeger MCP PRs: tracing for MCP methods, inbound trace context.
  6. 2026-06Selected as LFX Mentee at the CNCF for Jaeger's AI Self-Service Skills Framework.
  7. 2026-06 → 09read_skill tool, ACP gateway fixes, self-tracing, agent evaluation, trace fixtures, operator skills, docs. Positive end-of-term evaluation.

Contact

Plain contact.

Open to roles in agentic AI, evals and observability from 2027. Open-source collaboration any time.

Where
Bhopal, Madhya Pradesh, India · UTC+5:30

Lands in my Gmail inbox. I reply from there.