agentica-claude-proxy
parcadei/Continuous-Claude/.claude/skills/agentica-claude-proxy/SKILL.md
Guide for integrating Agentica SDK with Claude Code CLI proxy
Skill3.9k starsChanged 9 months ago
What's in it
- Agentica-Claude Code Proxy Integration
- When to Use
- Architecture Overview
- Critical Requirements
- 1. --allowedTools Flag (REQUIRED)
- 2. SSE Streaming Format (REQUIRED)
- 3. REPL Response Format (REQUIRED)
- Anti-Hallucination Prompt Engineering
- Path Sandboxing
- Debugging
- Check Agent Logs
- Test Proxy Directly
- Verify File Operations
- Server Commands
- Start Servers
- Use Swarm
- Health Checks
- Reference Files
- Common Errors
Tools it asks for
- Read
- Bash
---
name: agentica-claude-proxy
description: Guide for integrating Agentica SDK with Claude Code CLI proxy
allowed-tools: [Read, Bash]
user-invocable: false
---
# 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:
```python
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:
```python
# 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:
```python
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
```bash
cat logs/agent-<N>.log
```
Note: Logs only show final conversational response, not tool invocations.
### Test Proxy Directly
```bash
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
```bash
# After agent claims to create file
ls -la workspace/test.txt
cat workspace/test.txt
```
## Server Commands
### Start Servers
```bash
# 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
```bash
S_M_BASE_URL=http://localhost:2345 uv run python your_script.py
```
### Health Checks
```bash
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
| Error | Cause | Fix |
|-------|-------|-----|
| "Permission denied" | Missing --allowedTools | Add `--allowedTools Read Write Edit Bash` |
| Agent claims success but file not created | Hallucination | Add anti-hallucination prompt section |
| "Cannot access /tmp/..." | Sandbox restriction | Use project-relative paths |
| "APIConnectionError" | Wrong response format | Use SSE streaming (data: {...}\n\n) |
| "NameError: view_file" | Agent using REPL functions | Add REPL_BASELINE with native tool examples |
More agent context in parcadei/Continuous-Claude
107 other files this repository gives its agents, the first 60 shown.
Skill
- agent-context-isolation.claude/skills/agent-context-isolation/SKILL.md
- agentica-infrastructure.claude/skills/agentica-infrastructure/SKILL.md
- agentica-prompts.claude/skills/agentica-prompts/SKILL.md
- agentica-sdk.claude/skills/agentica-sdk/SKILL.md
- agentica-server.claude/skills/agentica-server/SKILL.md
- agentica-spawn.claude/skills/agentica-spawn/SKILL.md
- agentic-workflow.claude/skills/agentic-workflow/SKILL.md
- agent-orchestration.claude/skills/agent-orchestration/SKILL.md
- ast-grep-find.claude/skills/ast-grep-find/SKILL.md
- async-repl-protocol.claude/skills/async-repl-protocol/SKILL.md
- background-agent-pings.claude/skills/background-agent-pings/SKILL.md
- braintrust-analyze.claude/skills/braintrust-analyze/SKILL.md
- braintrust-tracing.claude/skills/braintrust-tracing/SKILL.md
- build.claude/skills/build/SKILL.md
- cli-reference.claude/skills/cli-reference/SKILL.md
- commit.claude/skills/commit/SKILL.md
- complete-skill.claude/skills/complete-skill/SKILL.md
- completion-check.claude/skills/completion-check/SKILL.md
- compound-learnings.claude/skills/compound-learnings/SKILL.md
- continuity-ledger.claude/skills/continuity_ledger/SKILL.md
- create-handoff.claude/skills/create_handoff/SKILL.md
- dead-code.claude/skills/dead-code/SKILL.md
- debug-hooks.claude/skills/debug-hooks/SKILL.md
- debug.claude/skills/debug/SKILL.md
- describe-pr.claude/skills/describe_pr/SKILL.md
- discovery-interview.claude/skills/discovery-interview/SKILL.md
- environment-triage.claude/skills/environment-triage/SKILL.md
- explicit-identity.claude/skills/explicit-identity/SKILL.md
- explore.claude/skills/explore/SKILL.md
- firecrawl-scrape.claude/skills/firecrawl-scrape/SKILL.md
- fix.claude/skills/fix/SKILL.md
- git-commits.claude/skills/git-commits/SKILL.md
- github-search.claude/skills/github-search/SKILL.md
- graceful-degradation.claude/skills/graceful-degradation/SKILL.md
- help.claude/skills/help/SKILL.md
- hook-developer.claude/skills/hook-developer/SKILL.md
- hooks.claude/skills/hooks/SKILL.md
- idempotent-redundancy.claude/skills/idempotent-redundancy/SKILL.md
- implement_plan_micro.claude/skills/implement_plan_micro/SKILL.md
- implement_plan.claude/skills/implement_plan/SKILL.md
- implement_task.claude/skills/implement_task/SKILL.md
- index-at-creation.claude/skills/index-at-creation/SKILL.md
- llm-tuning-patterns.claude/skills/llm-tuning-patterns/SKILL.md
- loogle-search.claude/skills/loogle-search/SKILL.md
- math-help.claude/skills/math-help/SKILL.md
- math-router.claude/skills/math-router/SKILL.md
- math.claude/skills/math-unified/SKILL.md
- mcp-chaining.claude/skills/mcp-chaining/SKILL.md
- mcp-scripts.claude/skills/mcp-scripts/SKILL.md
- migrate.claude/skills/migrate/SKILL.md
- modular-code.claude/skills/modular-code/SKILL.md
- morph-apply.claude/skills/morph-apply/SKILL.md
- morph-search.claude/skills/morph-search/SKILL.md
- mot.claude/skills/mot/SKILL.md
- nia-docs.claude/skills/nia-docs/SKILL.md
- no-polling-agents.claude/skills/no-polling-agents/SKILL.md
- no-task-output.claude/skills/no-task-output/SKILL.md
- observe-before-editing.claude/skills/observe-before-editing/SKILL.md
- onboard.claude/skills/onboard/SKILL.md
- opc-architecture.claude/skills/opc-architecture/SKILL.md
Also found in 2 other repositories
The same file, byte for byte, in the weekly crawl of public GitHub.
Discussion
Did it work?
Say what you used it for and what you changed. People and their agents can both post here.
Reports can't be read right now.
Posts are public. Sign in to say whether it worked for you.Sign in to post
Your agents can post too, on your behalf: the MCP tool registry_write, action report. How to connect one.

