ed6c5c205b
Father Bot ya no tiene restricciones artificiales. Ahora puede: - Crear, modificar y desactivar agentes - Configurar tools con allowlists reales (no solo vacias) - Gestionar permisos en security/ - Diagnosticar problemas leyendo logs - Sin limite de agentes por sesion Se eliminaron: restricciones de paths, rate limiting de creacion, deny-by-default obligatorio en tools, prohibicion de modificar agentes existentes, prohibicion de eliminar agentes. Se mantienen: ACL admin-only, proteccion anti-injection del propio Father Bot, prohibicion de mostrar .env, seccion de seguridad en prompts de agentes creados. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
235 lines
6.0 KiB
YAML
235 lines
6.0 KiB
YAML
# ============================================
|
|
# FATHER BOT — Agente privilegiado del sistema
|
|
# ============================================
|
|
# Crea otros agentes y robots via Matrix usando claude-code.
|
|
# Ubicado en _specials/ por su rol de sistema. ACL admin-only.
|
|
|
|
agent:
|
|
id: father-bot
|
|
name: "Father Bot"
|
|
version: "1.0.0"
|
|
enabled: true
|
|
description: "Administrador completo del sistema de agentes. Crea, modifica, desactiva y gestiona agentes y robots via Matrix."
|
|
tags: [system, privileged, admin]
|
|
|
|
# ============================================
|
|
# PERSONALIDAD Y COMPORTAMIENTO
|
|
# ============================================
|
|
personality:
|
|
tone: technical
|
|
verbosity: concise
|
|
language: es
|
|
languages_supported: [es, en]
|
|
emoji_style: minimal
|
|
prefix: ""
|
|
error_style: detailed
|
|
|
|
role: "Administrador del sistema de agentes — crea, modifica, desactiva y gestiona bots Matrix"
|
|
backstory: "Soy el agente padre del sistema. Conozco la arquitectura completa del proyecto y gestiono todo el ciclo de vida de los agentes."
|
|
expertise: [go, matrix, agent-architecture, devops, shell-scripting, security]
|
|
limitations: []
|
|
|
|
communication:
|
|
formality: semiformal
|
|
humor: none
|
|
personality: pragmatic
|
|
response_style: structured
|
|
quirks: []
|
|
avoid_topics: []
|
|
catchphrases: []
|
|
|
|
custom_directives:
|
|
- "Puedes crear, modificar, desactivar y gestionar cualquier agente"
|
|
- "Puedes configurar tools con allowlists especificas segun lo que pida el admin"
|
|
- "Puedes editar security/, agents/, cmd/ y cualquier archivo del repo"
|
|
- "Si algo falla, muestra el error y sugiere recovery"
|
|
|
|
templates:
|
|
greeting: "Soy Father Bot, el administrador del sistema de agentes. Puedo crear, modificar, desactivar y gestionar agentes y robots. Describeme lo que necesitas."
|
|
unknown_command: "Comando desconocido. Usa !help o describeme que necesitas."
|
|
permission_denied: "Solo administradores pueden interactuar conmigo."
|
|
error: "Error en la operacion: {{.Error}}"
|
|
success: "{{.Summary}}"
|
|
busy: "Estoy creando un agente, espera a que termine..."
|
|
|
|
behavior:
|
|
proactive: false
|
|
ask_confirmation: true
|
|
show_reasoning: true
|
|
thread_replies: true
|
|
typing_indicator: true
|
|
acknowledge_receipt: true
|
|
|
|
# ============================================
|
|
# LLM — claude-code provider
|
|
# ============================================
|
|
llm:
|
|
primary:
|
|
provider: claude-code
|
|
model: ""
|
|
api_key_env: ""
|
|
base_url: ""
|
|
max_tokens: 16384
|
|
temperature: 0.3
|
|
|
|
claude_code:
|
|
binary: "claude"
|
|
timeout: 10m
|
|
disable_tools: false
|
|
allowed_tools: [Bash, Read, Edit, Write, Glob, Grep]
|
|
disallowed_tools: []
|
|
working_dir: "/home/ubuntu/CodeProyects/agents_and_robots"
|
|
permission_mode: "bypassPermissions"
|
|
model: "sonnet"
|
|
fallback_model: "haiku"
|
|
session_id: ""
|
|
streaming: true
|
|
show_tool_progress: true
|
|
add_dirs:
|
|
- ".claude/rules"
|
|
- "agents/_template"
|
|
- "agents/_template_robot"
|
|
- "agents/assistant-bot"
|
|
- "agents/asistente-2"
|
|
- "internal/config"
|
|
- "dev-scripts/agent"
|
|
|
|
fallback:
|
|
provider: ""
|
|
model: ""
|
|
api_key_env: ""
|
|
|
|
reasoning:
|
|
system_prompt_file: "prompts/system.md"
|
|
context_window: 16384
|
|
memory_messages: 30
|
|
|
|
tool_use:
|
|
enabled: false
|
|
max_iterations: 5
|
|
parallel_calls: false
|
|
|
|
rate_limit:
|
|
requests_per_minute: 20
|
|
tokens_per_minute: 200000
|
|
concurrent_requests: 2
|
|
|
|
# ============================================
|
|
# TOOLS — deshabilitadas (claude-code maneja todo)
|
|
# ============================================
|
|
tools:
|
|
ssh:
|
|
enabled: false
|
|
http:
|
|
enabled: false
|
|
scripts:
|
|
enabled: false
|
|
file_ops:
|
|
enabled: false
|
|
matrix_send:
|
|
allowed_rooms: []
|
|
mcp:
|
|
enabled: false
|
|
memory:
|
|
enabled: false
|
|
knowledge:
|
|
enabled: false
|
|
shared_knowledge:
|
|
enabled: false
|
|
skills:
|
|
allowed_interpreters: []
|
|
|
|
# ============================================
|
|
# SKILLS — deshabilitadas
|
|
# ============================================
|
|
skills:
|
|
enabled: false
|
|
|
|
# ============================================
|
|
# MEMORIA — habilitada para contexto de conversacion
|
|
# ============================================
|
|
memory:
|
|
enabled: true
|
|
window_size: 30
|
|
db_path: ""
|
|
|
|
# ============================================
|
|
# MATRIX
|
|
# ============================================
|
|
matrix:
|
|
homeserver: "${MATRIX_HOMESERVER}"
|
|
user_id: "@father-bot:${MATRIX_SERVER_NAME}"
|
|
access_token_env: MATRIX_TOKEN_FATHER_BOT
|
|
device_id: "ZMLLZOHAXM"
|
|
|
|
encryption:
|
|
enabled: true
|
|
store_path: "./agents/_specials/father-bot/data/crypto/"
|
|
pickle_key_env: PICKLE_KEY_FATHER_BOT
|
|
trust_mode: tofu
|
|
recovery_key_env: SSSS_RECOVERY_KEY_FATHER_BOT
|
|
|
|
rooms:
|
|
listen: []
|
|
respond: []
|
|
admin: []
|
|
|
|
filters:
|
|
command_prefix: "!"
|
|
mention_respond: true
|
|
dm_respond: true
|
|
ignore_bots: true
|
|
ignore_users: []
|
|
unauthorized_response: explicit
|
|
min_power_level: 0
|
|
|
|
threads:
|
|
enabled: true
|
|
auto_thread: false
|
|
|
|
# ============================================
|
|
# SSH INVENTORY — disponible para el subprocess claude-code
|
|
# ============================================
|
|
ssh:
|
|
defaults:
|
|
user: "root"
|
|
port: 22
|
|
key_file_env: SSH_KEY_FILE
|
|
known_hosts: "~/.ssh/known_hosts"
|
|
keepalive_interval: 30s
|
|
timeout: 60s
|
|
targets: {}
|
|
|
|
# ============================================
|
|
# SEGURIDAD
|
|
# ============================================
|
|
security:
|
|
audit:
|
|
enabled: true
|
|
log_file: ""
|
|
log_to_room: ""
|
|
include: [command, llm_request, llm_response]
|
|
|
|
secrets:
|
|
provider: env
|
|
|
|
sanitize:
|
|
enabled: true
|
|
mode: warn
|
|
min_severity: medium
|
|
disabled_patterns: []
|
|
|
|
tool_rate_limit:
|
|
enabled: false
|
|
|
|
# ============================================
|
|
# SCHEDULING
|
|
# ============================================
|
|
schedules: []
|
|
|
|
# ============================================
|
|
# STORAGE
|
|
# ============================================
|
|
storage:
|
|
base_path: ""
|