← All reportsPublic report

alibaba/arthas

Alibaba Java Diagnostic Tool Arthas/Alibaba Java诊断利器Arthas

37k stars Java View on GitHubprofiled 11d ago
Try GitZoid
8PRs this week
2Contributors
0Deps scanned
0Issues found
01 · Repo overview

How arthas is put together

Arthas is Alibaba's open-source Java diagnostic tool that attaches to a running JVM as a Java agent (agent module, Premain/Agent-Class com.taobao.arthas.agent334.AgentBootstrap) without code changes or restarts. The core module hosts the command engine (watch/trace/jad/sc/mc/retransform etc.), starting an embedded server that serves interactive sessions over Telnet, HTTP, and WebSocket, with the Vue-based web-ui console connecting through WebSocket. Supporting modules include spy (in-process instrumentation hooks loaded into the target JVM), memorycompiler (in-memory javac), arthas-vmtool/JNI libraries and bundled async-profiler natives for VM-level operations, tunnel-client/tunnel-common for connecting agents to a remote tunnel-server, and arthas-mcp-server exposing diagnostics over the Model Context Protocol. Primary language is Java (target 1.8, supporting up to JDK 25), built with a multi-module Maven reactor (${revision} = 4.3.4), plus TypeScript/Vite frontends.

Languages

JavaTypeScriptVue SFCShell

Frameworks

Netty 4.1.xSpring Boot (starter, 2.7.18 / 3.x variants)OGNL expression engineByteBuddyBytekit (com.alibaba:bytekit-core)fastjson2SLF4J + Logbackjline/termd-core terminal stackModel Context Protocol SDK (io.modelcontextprotocol.sdk:mcp)Vite + Vue 3 (web console)Tailwind CSS + DaisyUIReact + Ant Design (labs JFR frontend)

Infrastructure

Dockerfile / Dockerfile-No-Jdk imagesGitHub Actions CI (JavaCI workflow badge)Native shared libraries shipped in-repo (lib/libArthasJniLibrary*, async-profiler/libasyncProfiler*)Install scripts bin/install.sh, bin/as.sh, as-package.shgRPC web proxy lab (labs/arthas-grpc-web-proxy)

Major components

agent

Java agent entry point (arthas-agent.jar) whose bootstrap class attaches Arthas to the target JVM via premain/agentmain.

core

Main engine implementing all diagnostic commands, session management, and the embedded Telnet/HTTP/WebSocket server (ArthasServer).

spy

Minimal hook classes injected into the target application's classpath to relay method-invocation data back to the core.

boot / client

Standalone bootstrap jar (arthas-boot.jar) and interactive CLI client used to select a JVM process and attach/connect.

tunnel-client / tunnel-common (+ tunnel-server on JDK17 profile)

Client-side connectivity so agents register with a central remote tunnel server for browser/cluster access.

arthas-mcp-server

Exposes Arthas diagnostic capabilities as tools over the Model Context Protocol (MCP) for AI clients.

web-ui/arthasWebConsole

Vue 3 + Vite web console with mode-specific builds (ui, tunnel, native-agent) proxied to backend /api endpoints.

memorycompiler + arthas-vmtool + native libs

In-memory Java compilation for mc/retransform, plus JNI libraries and bundled async-profiler for VM-level and profiling operations.

The past several weeks focused on making Arthas easier to use inside Kubernetes, with a major new ability to attach the tool across container boundaries and namespaces for debugging. Two releases shipped (4.3.3 and 4.3.4) alongside an MCP file-upload capability and supporting documentation and logging improvements. A smaller maintenance week fixed the Docker multi-platform build image.

Week by week

2026-08-10A busy release week that added Kubernetes cross-container debugging support and shipped versions 4.3.3 and 4.3.4.latest6 changes

Feature

Attach to processes across containers in Kubernetes

Arthas can now attach to a running Java process from a separate ephemeral debug container in Kubernetes, even when the two live in different mount namespaces.

Feature

Log successful cross-namespace attachments

When attaching succeeds across different namespaces, Arthas now records it in its logs so users can confirm what happened.

Feature

New upload_file tool for AI assistants

The MCP (AI-assistant) interface gained a tool that lets a connected assistant upload files, expanding what automated workflows can do.

Chore

Release 4.3.4

A new stable version was cut including the Kubernetes attach features and recent fixes.

Chore

Release 4.3.3

An intermediate version was released earlier in the week containing the MCP upload_file addition.

Docs

Documented Kubernetes cross-container usage

New documentation explains how to attach Arthas across containers in a Kubernetes cluster.

2026-07-20A quiet maintenance week with a single fix to keep Docker builds working on multiple platforms.1 change

Fix

Fixed Docker multi-platform base image

Corrected the base image used for Docker builds so releases can be built consistently for multiple hardware platforms.

03 · Security check

Dependencies and code review

0 dependencies scanned

Dependency advisories

Security Watch

No known advisories across 0 scanned dependencies.

No known advisories in the scanned dependencies.

Code review

No concrete code-level issues confirmed.

Get this report every week for your repos.

GitZoid learns each repo, reports what changed, and flags what needs attention. One flat price for the whole team.

$19 a month, flat · First 10 outputs free · No card required