agent-worker
1
总安装量
1
周安装量
#53123
全站排名
安装命令
npx skills add https://github.com/lidessen/skills --skill agent-worker
Agent 安装分布
replit
1
amp
1
opencode
1
cursor
1
codex
1
Skill 文档
Agent Worker
Who You Are
You build AI-powered workflows. You’ve felt the pain of testing prompts manually, mocking tool calls, switching between providers. You want programmatic control.
agent-worker gives you that control: persistent sessions, multiple backends, tool injection, approval workflows.
You’re here to create sessions, send messages, manage toolsâall from the command line.
Quick Start
# Create a session (SDK backend, default)
agent-worker session new -m anthropic/claude-sonnet-4-5
# Create with Claude CLI backend
agent-worker session new -b claude
# Send a message
agent-worker send "What is 2+2?"
# End session
agent-worker session end
That’s it. Session persists across commands. State maintained until you end it.
Choosing a Backend
| Backend | Best For | Model Selection |
|---|---|---|
sdk (default) |
Full control, tool injection, mocking | -m provider/model |
claude |
Use existing Claude CLI installation | CLI’s own model |
codex |
OpenAI Codex workflows | CLI’s own model |
cursor |
Cursor Agent integration | CLI’s own model |
# Check what's available
agent-worker backends
# SDK backend with specific model
agent-worker session new -m openai/gpt-5.2
# CLI backends
agent-worker session new -b claude
agent-worker session new -b codex
agent-worker session new -b cursor
Note: Tool management (add, mock, import) only works with SDK backend.
Session Management
Creating Sessions
# Basic session
agent-worker session new
# With custom system prompt
agent-worker session new -s "You are a code reviewer."
# From file
agent-worker session new -f ./prompts/reviewer.txt
# Named session (easier reference)
agent-worker session new -n my-session
# Custom idle timeout (ms, 0 = no timeout)
agent-worker session new --idle-timeout 3600000
Multiple Sessions
# List all
agent-worker session list
# Switch default
agent-worker session use my-session
# Target specific session
agent-worker send "Hello" --to my-session
# End specific
agent-worker session end my-session
# End all
agent-worker session end --all
Session Info
# Status
agent-worker session status
# Statistics (tokens, messages)
agent-worker stats
# Conversation history
agent-worker history
agent-worker history --last 5
# Export full transcript
agent-worker export > transcript.json
# Clear history (keep session)
agent-worker clear
Tool Management (SDK Backend Only)
Adding Tools
# Simple tool
agent-worker tool add get_weather \
-d "Get weather for a location" \
-p "location:string:City name"
# With approval requirement
agent-worker tool add delete_file \
-d "Delete a file" \
-p "path:string:File path" \
--needs-approval
Importing Tools from File
// my-tools.ts
export default [
{
name: 'search_docs',
description: 'Search documentation',
parameters: {
type: 'object',
properties: {
query: { type: 'string', description: 'Search query' }
},
required: ['query']
},
execute: async (args) => {
// Real implementation
return { results: ['doc1', 'doc2'] }
}
}
]
agent-worker tool import ./my-tools.ts
Mocking Tools
# Set static mock response
agent-worker tool mock get_weather '{"temp": 72, "condition": "sunny"}'
# List tools
agent-worker tool list
Approval Workflow
For tools marked needsApproval:
# Send message that triggers tool
agent-worker send "Delete /tmp/test.txt"
# Check pending approvals
agent-worker pending
# Approve
agent-worker approve <approval-id>
# Deny with reason
agent-worker deny <approval-id> -r "Path not allowed"
Model Formats
SDK backend supports multiple formats:
# Gateway format (recommended)
agent-worker session new -m openai/gpt-5.2
agent-worker session new -m anthropic/claude-sonnet-4-5
# Provider-only (uses provider's frontier model)
agent-worker session new -m openai
agent-worker session new -m anthropic
# Direct provider format
agent-worker session new -m deepseek:deepseek-chat
Check available providers:
agent-worker providers
Common Patterns
Testing a Prompt
# Create session with your system prompt
agent-worker session new -f ./my-prompt.txt -n test
# Run test cases
agent-worker send "Test case 1: ..." --to test
agent-worker send "Test case 2: ..." --to test
# Check history
agent-worker history --to test
# Clean up
agent-worker session end test
Tool Development
# Start session
agent-worker session new -n dev
# Add tool with mock
agent-worker tool add my_api -d "Call my API" -p "endpoint:string"
agent-worker tool mock my_api '{"status": "ok"}'
# Test
agent-worker send "Call my API at /users"
# Update mock, test again
agent-worker tool mock my_api '{"status": "error", "code": 500}'
agent-worker send "Call my API at /users"
Multi-Backend Comparison
# Same prompt, different backends
agent-worker session new -m anthropic/claude-sonnet-4-5 -n anthropic
agent-worker session new -b claude -n claude-cli
agent-worker send "Explain recursion" --to anthropic
agent-worker send "Explain recursion" --to claude-cli
# Compare
agent-worker history --to anthropic
agent-worker history --to claude-cli
Programmatic Usage
import { AgentSession } from 'agent-worker'
const session = new AgentSession({
model: 'anthropic/claude-sonnet-4-5',
system: 'You are a helpful assistant.',
tools: [/* your tools */]
})
// Send message
const response = await session.send('Hello')
console.log(response.content)
console.log(response.toolCalls)
console.log(response.usage)
// Stream
for await (const chunk of session.sendStream('Tell me a story')) {
process.stdout.write(chunk)
}
// Get state for persistence
const state = session.getState()
Troubleshooting
| Issue | Solution |
|---|---|
| “No active session” | Run agent-worker session new first |
| “Session not found” | Check agent-worker session list |
| “Tool management not supported” | Use SDK backend (-b sdk or omit -b) |
| “Provider not loaded” | Check API key with agent-worker providers |
| Session not responding | Check if process alive: agent-worker session status |
Command Reference
agent-worker session new Create session
agent-worker session list List sessions
agent-worker session status Check session
agent-worker session use Set default
agent-worker session end End session
agent-worker send Send message
agent-worker history Show history
agent-worker stats Show statistics
agent-worker export Export transcript
agent-worker clear Clear history
agent-worker tool add Add tool
agent-worker tool import Import from file
agent-worker tool mock Set mock response
agent-worker tool list List tools
agent-worker pending List pending approvals
agent-worker approve Approve tool call
agent-worker deny Deny tool call
agent-worker providers Check SDK providers
agent-worker backends Check available backends
Remember
agent-worker is about programmatic control over AI conversations.
- Sessions persist state
- Tools inject capabilities
- Backends give you choice
- Mocks enable testing
䏿¯æå¨å¯¹è¯ï¼èæ¯å·¥ç¨åç AI 交äºã