ワンクリックで
burner-agents-privacy
Deploy disposable AI agents for unattributable web interaction with automatic identity destruction
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Deploy disposable AI agents for unattributable web interaction with automatic identity destruction
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
Train and deploy Qwen-AgentWorld, a native language world model that simulates agentic environments across 7 domains (MCP, Search, Terminal, SWE, Android, Web, OS) for agent training and evaluation.
Build and orchestrate collaborative multi-agent teams using HiClaw's Manager-Workers architecture on Matrix with Kubernetes-native control.
Set up and manage collaborative multi-agent teams using HiClaw, a Kubernetes-native platform with Matrix rooms for human-in-the-loop AI coordination
Build and orchestrate collaborative multi-agent teams using HiClaw's Manager-Workers architecture with Matrix rooms, MCP servers, and Kubernetes-native deployment.
Deploy and orchestrate collaborative multi-agent teams using HiClaw's Manager-Workers architecture on Docker or Kubernetes with Matrix rooms for human oversight
Use Agent Apprenticeship to train AI agents through real-world tasks, reusable experience, and ecosystem learning signals
| name | burner-agents-privacy |
| description | Deploy disposable AI agents for unattributable web interaction with automatic identity destruction |
| triggers | ["create a burner agent to browse anonymously","set up disposable agents for web automation","use burner agents for privacy-preserving web interaction","configure swarm of unattributable agents","automate web tasks with disposable identities","deploy privacy agents that destroy themselves after completion","set up isolated browser contexts for each agent","orchestrate multiple burner agents for a task"] |
Skill by ara.so — AI Agent Skills collection.
Burner Agents is a Python framework for deploying disposable AI agents that interact with the web on your behalf. Each agent runs in an isolated browser context with a unique fingerprint and is destroyed immediately after completing its task, preventing tracking and profile building. The system provides non-attribution, non-linkability, and ensures no persistent profile is created.
# Clone the repository
git clone https://github.com/NotPBShaw/burner-agents.git
cd burner-agents
# Install dependencies
pip install -r requirements.txt
# Or install via pip (if published)
pip install burner-agents
The project has four main components:
from burner.agent import BurnerAgent
from burner.task import Task
# Create a task with natural language intent
task = Task(
intent="Find the top 3 Python AI frameworks on GitHub",
max_agents=1
)
# Deploy a burner agent
agent = BurnerAgent()
result = agent.execute(task)
print(result.data)
# Agent and all state destroyed automatically after completion
from burner.orchestration import Swarm
from burner.task import Task
# Define a complex task that benefits from multiple agents
task = Task(
intent="Compare pricing across 5 cloud providers",
max_agents=5,
parallel=True
)
# Orchestrate across multiple disposable agents
swarm = Swarm(size=5)
results = swarm.execute(task)
# Each agent visited one provider with unique identity
for result in results:
print(f"Provider: {result.provider}, Price: {result.price}")
# All agents destroyed, no persistent state retained
# Required: LLM provider for reasoning
export BURNER_LLM_PROVIDER="anthropic"
export ANTHROPIC_API_KEY="your-api-key"
# Optional: Browser configuration
export BURNER_HEADLESS=true
export BURNER_TIMEOUT=30000
# Optional: Network isolation
export BURNER_PROXY_ROTATION=true
export BURNER_PROXY_POOL_SIZE=10
# Optional: Identity generation
export BURNER_FINGERPRINT_RANDOMIZATION=true
# config.py
from burner.config import BurnerConfig
config = BurnerConfig(
# Isolation settings
isolation={
"browser": "chromium", # chromium, firefox, webkit
"headless": True,
"separate_contexts": True,
"clear_on_complete": True
},
# Reasoning engine
reasoning={
"provider": "anthropic",
"model": "claude-3-5-sonnet-20241022",
"max_steps": 50,
"live_page_analysis": True
},
# Orchestration
orchestration={
"max_parallel_agents": 10,
"task_decomposition": "auto",
"result_reconciliation": True
},
# Identity management
identity={
"fingerprint_source": "random",
"destroy_on_complete": True,
"no_state_retention": True
}
)
from burner.isolation import IsolatedContext
from burner.identity import generate_identity
# Generate unique identity for this agent
identity = generate_identity()
# Create isolated browser context
context = IsolatedContext(
fingerprint=identity.fingerprint,
user_agent=identity.user_agent,
viewport=identity.viewport,
timezone=identity.timezone,
locale=identity.locale,
device_characteristics=identity.device
)
# Use context for browsing
async with context.browser() as browser:
page = await browser.new_page()
await page.goto("https://example.com")
# Perform actions...
# Context destroyed automatically on exit
from burner.identity import Fingerprint
# Create custom fingerprint
fingerprint = Fingerprint(
canvas_noise=True,
webgl_vendor="random",
audio_context_noise=True,
client_rects_noise=True,
screen_resolution=(1920, 1080),
color_depth=24,
hardware_concurrency=8,
device_memory=8
)
context = IsolatedContext(fingerprint=fingerprint)
from burner.reasoning import ReasoningEngine
from burner.isolation import IsolatedContext
# Initialize reasoning engine
engine = ReasoningEngine(
provider="anthropic",
model="claude-3-5-sonnet-20241022"
)
# Execute intent with live page reasoning
async with IsolatedContext() as context:
page = await context.new_page()
result = await engine.reason_and_act(
page=page,
intent="Navigate to Hacker News and find the top story about AI",
max_steps=20
)
print(result.final_answer)
print(f"Steps taken: {len(result.steps)}")
from burner.reasoning import Step
# Manual step control for complex workflows
async with IsolatedContext() as context:
page = await context.new_page()
steps = []
current_intent = "Find pricing information"
while not engine.is_complete(steps, current_intent):
# Analyze current page state
analysis = await engine.analyze_page(page)
# Decide next action
action = await engine.decide_action(
page_state=analysis,
intent=current_intent,
history=steps
)
# Execute action
result = await engine.execute_action(page, action)
steps.append(Step(action=action, result=result))
final_result = engine.synthesize(steps)
from burner.orchestration import TaskDecomposer, Swarm
# Decompose complex task into subtasks
decomposer = TaskDecomposer()
subtasks = decomposer.decompose(
intent="Research and compare 10 project management tools",
max_agents=10
)
# Each subtask assigned to separate agent
swarm = Swarm(size=len(subtasks))
results = await swarm.execute_parallel(subtasks)
# Reconcile results
final_report = decomposer.reconcile(results)
from burner.orchestration import FanOut
# Fan out single task to multiple agents for redundancy
fanout = FanOut(
task=Task(intent="Check if service is available"),
agent_count=3,
reconciliation_strategy="majority"
)
results = await fanout.execute()
# Returns reconciled result based on majority agreement
print(f"Service available: {results.consensus}")
print(f"Agreement: {results.agreement_percentage}%")
from burner.orchestration import Pipeline
# Create pipeline where each agent's output feeds the next
pipeline = Pipeline([
Task(intent="Find the top AI research papers this week"),
Task(intent="Summarize the key findings from these papers"),
Task(intent="Identify practical applications")
])
# Each stage uses a fresh agent
result = await pipeline.execute()
print(result.final_output)
from burner.identity import IdentityManager
# Create identity manager
manager = IdentityManager()
# Generate identity for task
identity = manager.create()
print(f"Identity ID: {identity.id}")
print(f"Created: {identity.created_at}")
# Use identity
agent = BurnerAgent(identity=identity)
result = await agent.execute(task)
# Destroy identity (automatic on task completion)
manager.destroy(identity.id)
# Verify destruction
assert manager.get(identity.id) is None
from burner.identity import Identity, DeviceProfile
# Create identity with specific characteristics
device = DeviceProfile(
device_type="desktop",
os="macos",
browser="chrome",
version="120.0.0.0"
)
identity = Identity(
device=device,
location="US-CA-SanFrancisco",
language="en-US",
connection_type="wifi"
)
agent = BurnerAgent(identity=identity)
import asyncio
from burner.agent import BurnerAgent
from burner.task import Task
from burner.orchestration import Swarm
from burner.config import BurnerConfig
async def privacy_research():
# Configure for maximum privacy
config = BurnerConfig(
isolation={"headless": True, "separate_contexts": True},
identity={"destroy_on_complete": True, "no_state_retention": True}
)
# Define research task
task = Task(
intent="""
Research the top 5 privacy-focused email providers.
For each: pricing, features, jurisdiction, encryption standards.
""",
max_agents=5
)
# Deploy swarm
swarm = Swarm(size=5, config=config)
results = await swarm.execute(task)
# Results are collected; all agents destroyed
for i, result in enumerate(results, 1):
print(f"\nProvider {i}:")
print(f" Name: {result.provider_name}")
print(f" Pricing: {result.pricing}")
print(f" Jurisdiction: {result.jurisdiction}")
print(f" Encryption: {result.encryption}")
# Verify no state retained
assert swarm.active_agents() == 0
assert swarm.retained_state() is None
if __name__ == "__main__":
asyncio.run(privacy_research())
from burner.orchestration import ThrottledSwarm
import asyncio
# Prevent detection through timing analysis
swarm = ThrottledSwarm(
size=10,
requests_per_minute=30,
jitter=True, # Random delays between requests
delay_range=(2, 8) # Seconds between actions
)
results = await swarm.execute(task)
from burner.isolation import ProxyRotator
# Rotate network egress for each agent
rotator = ProxyRotator(
proxy_list=[
"http://proxy1.example.com:8080",
"http://proxy2.example.com:8080",
"http://proxy3.example.com:8080"
],
rotation_strategy="random" # or "round-robin", "least-used"
)
context = IsolatedContext(proxy_rotator=rotator)
from burner.orchestration import Validator
# Validate results across multiple agents
validator = Validator(
consensus_threshold=0.7, # 70% agreement required
min_agents=3
)
# Deploy multiple agents for same task
swarm = Swarm(size=5)
raw_results = await swarm.execute(task)
# Validate and reconcile
validated_result = validator.validate(raw_results)
if validated_result.consensus_reached:
print(f"Validated result: {validated_result.data}")
else:
print(f"No consensus. Confidence: {validated_result.confidence}")
from burner.agent import BurnerAgent
from burner.exceptions import AgentTimeoutError, ReasoningError
try:
agent = BurnerAgent(timeout=60000) # 60 seconds
result = await agent.execute(task)
except AgentTimeoutError as e:
print(f"Agent timed out after {e.elapsed}ms")
print(f"Last action: {e.last_action}")
except ReasoningError as e:
print(f"Reasoning failed: {e.message}")
print(f"Page state: {e.page_state}")
# Verify isolation
from burner.isolation import verify_isolation
context1 = IsolatedContext()
context2 = IsolatedContext()
# Check fingerprints are different
assert context1.fingerprint != context2.fingerprint
# Check no shared cookies/storage
isolation_report = verify_isolation([context1, context2])
print(f"Fully isolated: {isolation_report.is_isolated}")
print(f"Shared elements: {isolation_report.shared_elements}")
from burner.identity import IdentityManager
manager = IdentityManager(strict_destruction=True)
identity = manager.create()
agent = BurnerAgent(identity=identity)
# Ensure destruction even on error
try:
result = await agent.execute(task)
finally:
manager.destroy(identity.id, verify=True)
# Verify no remnants
assert manager.get(identity.id) is None
assert identity.has_remnants() is False
from burner.orchestration import ResourceConstrainedSwarm
# Limit concurrent agents
swarm = ResourceConstrainedSwarm(
max_size=20,
max_concurrent=5, # Only 5 running at once
memory_limit_mb=2048
)
# Agents queued and executed in batches
results = await swarm.execute(task)
This tool is for privacy-preserving web interaction. You are responsible for:
The framework provides technical capabilities; legal compliance is the user's responsibility.