Get the FREE Ultimate OpenClaw Setup Guide →

agentica-claude-proxy

npx machina-cli add skill parcadei/Continuous-Claude-v3/agentica-claude-proxy --openclaw
Files (1)
SKILL.md
4.1 KB

Agentica-Claude Code Proxy Integration

Use this skill when developing or debugging the Agentica-Claude proxy integration.

When to Use

  • Setting up Agentica agents to use Claude Code tools
  • Debugging agent hallucination issues
  • Fixing permission errors in file operations
  • Understanding the REPL response format

Architecture Overview

Agentica Agent → S_M_BASE_URL → Claude Proxy → claude -p → Claude CLI (with tools)
                 (localhost:2345)   (localhost:8080)

Critical Requirements

1. --allowedTools Flag (REQUIRED)

Claude CLI in -p mode restricts file operations. You MUST add:

subprocess.run([
    "claude", "-p", prompt,
    "--append-system-prompt", system_prompt,
    "--allowedTools", "Read", "Write", "Edit", "Bash",  # REQUIRED
])

Without this, agents will report "permission denied" for Write/Edit operations.

2. SSE Streaming Format (REQUIRED)

Agentica expects SSE streaming, not plain JSON:

# Response format
yield f"data: {json.dumps(chunk)}\n\n"
yield "data: [DONE]\n\n"

3. REPL Response Format (REQUIRED)

Agents MUST return results as Python code blocks with a return statement:

return "your result here"

Agentica's REPL parser extracts code between ```python and ```.

Anti-Hallucination Prompt Engineering

Agents will hallucinate success without actually using tools unless you explicitly warn them:

## ANTI-HALLUCINATION WARNING

**STOP AND READ THIS CAREFULLY:**

You have access to these tools: Read, Write, Edit, Bash

When the task asks you to create/modify/run something:
1. FIRST: Actually invoke the tool (Read, Write, Edit, or Bash)
2. SECOND: Wait for the tool result
3. THIRD: Then return your answer based on what actually happened

**DO NOT** skip the tool invocation and just claim success!

If you didn't invoke a tool, you CANNOT claim the action succeeded.

Path Sandboxing

Both Claude Code and Agentica have sandboxes:

  • /tmp/ paths are blocked by Claude Code
  • Files outside project directory blocked by Agentica

Solution: Use project-relative paths like workspace/ instead of /tmp/

Debugging

Check Agent Logs

cat logs/agent-<N>.log

Note: Logs only show final conversational response, not tool invocations.

Test Proxy Directly

curl -s http://localhost:8080/v1/chat/completions \
  -H "Content-Type: application/json" \
  -d '{"model": "claude", "messages": [{"role": "user", "content": "Create file at workspace/test.txt"}], "stream": false}'

Verify File Operations

# After agent claims to create file
ls -la workspace/test.txt
cat workspace/test.txt

Server Commands

Start Servers

# Terminal 1: Proxy
uv run python scripts/agentica/claude_proxy.py --port 8080

# Terminal 2: Agentica Server
cd workspace/agentica-research/agentica-server
INFERENCE_ENDPOINT_URL=http://localhost:8080/v1/chat/completions uv run agentica-server --port 2345

Use Swarm

S_M_BASE_URL=http://localhost:2345 uv run python your_script.py

Health Checks

curl http://localhost:8080/health  # Proxy
curl http://localhost:2345/health  # Agentica

Reference Files

  • Proxy implementation: scripts/agentica/claude_proxy.py
  • REPL_BASELINE prompt: scripts/agentica/claude_proxy.py:49-155
  • Comprehensive test: workspace/test_swarm_all_tools.py
  • DependencySwarm: scripts/agentica/dependency_swarm.py

Common Errors

ErrorCauseFix
"Permission denied"Missing --allowedToolsAdd --allowedTools Read Write Edit Bash
Agent claims success but file not createdHallucinationAdd anti-hallucination prompt section
"Cannot access /tmp/..."Sandbox restrictionUse project-relative paths
"APIConnectionError"Wrong response formatUse SSE streaming (data: {...}\n\n)
"NameError: view_file"Agent using REPL functionsAdd REPL_BASELINE with native tool examples

Source

git clone https://github.com/parcadei/Continuous-Claude-v3/blob/main/.claude/skills/agentica-claude-proxy/SKILL.mdView on GitHub

Overview

This skill guides wiring the Agentica SDK with the Claude Code CLI proxy. It covers the required flags, streaming formats, and REPL conventions to ensure reliable tool use and debuggable workflows when running agents against Claude-powered tools.

How This Skill Works

Agentica sends requests to Claude Proxy, which forwards to Claude CLI in -p mode. The CLI must be started with --allowedTools (Read, Write, Edit, Bash) and the agent communicates via SSE streaming (data: ... and data: [DONE]) and returns results as Python code blocks for the REPL to parse. Path sandboxing requires using project-relative workspace paths to avoid /tmp restrictions.

When to Use It

  • Setting up Agentica agents to use Claude Code tools
  • Debugging agent hallucination issues
  • Fixing permission errors in file operations
  • Understanding the REPL response format

Quick Start

  1. Step 1: Start the proxy and agentica servers using the commands in Server Commands
  2. Step 2: Launch Claude CLI with --allowedTools Read Write Edit Bash and ensure workspace paths are used
  3. Step 3: Send a test request (curl) and verify SSE streaming and the REPL code block result in workspace

Best Practices

  • Always include --allowedTools with Read, Write, Edit, Bash in the Claude CLI
  • Use SSE streaming format (data: <chunk> and data: [DONE]) and emit Python code blocks for REPL results
  • Include an explicit anti-hallucination warning and require actual tool invocation before claiming success
  • Use project-relative paths (workspace/) instead of /tmp/ due to sandboxing
  • Verify behavior by checking agent logs and proxy responses during tests

Example Use Cases

  • Configure an Agentica agent to access Claude Code tools via the proxy and confirm tool invocations occur before responses
  • Diagnose a 'permission denied' error by ensuring the CLI is started with --allowedTools Read Write Edit Bash
  • Validate that responses are delivered as SSE streams and include a Python code block with a return statement
  • Start the proxy and agentica-server using the provided uv run commands and verify health endpoints
  • Create and inspect workspace/test.txt after the agent claims file creation to ensure the file exists

Frequently Asked Questions

Add this skill to your agents
Sponsor this space

Reach thousands of developers