claudecode4j CLAUDE.md

A set of project instructions for Claude Code, an AI coding assistant, in a Java library that connects to the Claude Code command-line tool.

In plain words
What is it for?
Use it when building, testing, formatting, or understanding the ClaudeCode4J Maven project and its modules.
Why use it?
It gives the assistant the project's structure, build commands, test commands, and formatting checks, so routine development work follows the repository's rules.

Instructions file

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/sudoitir/claudecode4j/claude-md
Clone the repo
git clone --depth 1 https://github.com/sudoitir/claudecode4j
Per session 1,651 This file is loaded in full into every session.
When invoked 1,651 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.01651 $0.01651
Opus 5 $0.00826 $0.00826
Sonnet 5 $0.00330 $0.00330
Haiku 4.5 $0.00165 $0.00165

Measured 2d ago against content hash 74ecdc1a5fcb, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

claudecode4j CLAUDE.md scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 2d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

CLAUDE.md · 182 lines

How it starts

The opening of the file, as written. The whole thing — 182 lines — stays where its author put it; the contents beside it link to each section on GitHub.

CLAUDE.md

This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.

Project Overview

ClaudeCode4J is a Java library for integrating with Claude Code CLI. It wraps the CLI tool and provides a clean Java API for executing prompts, streaming responses, and managing sessions.

Build Commands

# Build entire project
mvn clean install

# Build without tests
mvn clean install -DskipTests

# Run unit tests only (excludes integration and E2E tests)
mvn test

# Run a single test class
mvn test -Dtest=ClaudeRestIntegrationTest

# Run a single test method
mvn test -Dtest=ClaudeRestIntegrationTest#shouldExecutePromptAndReturnResponse

# Run tests for a specific module
mvn test -pl claudecode4j-core

# Run integration tests (requires Docker for Testcontainers)
mvn verify -Pintegration

# Run all tests including E2E (requires Claude CLI installed and authenticated)
mvn verify -Pall

# Format code (Spotless with Palantir Java Format)
mvn spotless:apply

# Check formatting
mvn spotless:check

Architecture

Module Structure

  • claudecode4j-bom: Bill of Materials for version management
  • claudecode4j-api: Interfaces, DTOs, and SPIs (no implementation)
  • claudecode4j-core: Pure Java implementation (no Spring dependency)
  • claudecode4j-spring-boot-starter: Spring Boot 4 auto-configuration
  • claudecode4j-rest-adapter: REST/SSE endpoints with OpenAI and Anthropic API compatibility
  • claudecode4j-kafka-adapter: Kafka request-reply messaging
  • claudecode4j-websocket-adapter: WebSocket terminal for interactive sessions
  • claudecode4j-mcp-server: MCP Server support for exposing Java methods as Claude tools
  • claudecode4j-context: Token-aware context optimization using JTokkit

Key Design Patterns

Sealed Types: ClaudeResponse and ClaudeException use sealed interfaces/classes with pattern matching:

switch (response) {
    case TextResponse text -> ...
    case StreamResponse stream -> ...
    case ErrorResponse error -> ...
}

Read the full file on GitHub · 182 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 2d ago First seen · 182 lines · 1,651 tokens per session scan A 74ecdc1a5fcb

Subscribe to this mod's changes

claudecode4j CLAUDE.md is an instructions file published in the GitHub repository sudoitir/claudecode4j (10 stars, last pushed 9d ago), licensed MIT. It adds 1,651 tokens to every session, about $0.0083 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.