AS

asterisk-validator

This tool validates syntax in MikoPBX configuration files and analyzes logs to detect errors or deviations.

Install

mkdir -p .claude/skills/asterisk-validator && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/5665" && unzip -o skill.zip -d .claude/skills/asterisk-validator && rm skill.zip

Installs to .claude/skills/asterisk-validator

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Валидация конфигурационных файлов Asterisk и анализ логов на корректность и best practices. Использовать при отладке проблем запуска Asterisk, проверке изменений конфигурации или проверке ошибок после регенерации воркерами.
223 charsno explicit “when” trigger
Intermediate

Key capabilities

  • Parses Asterisk configuration files for syntax errors
  • Audits logs for runtime exceptions and warnings
  • Verifies configuration alignment with MikoPBX best practices
  • Accesses containerized Asterisk files for remote validation

How it works

Runs validation scripts via Docker exec to analyze Asterisk config files and check logs for runtime consistency.

Inputs & outputs

You give it
Target configuration file name or log range
You get back
Validation report and error summary

When to use asterisk-validator

  • Check pjsip.conf syntax for errors
  • Audit Asterisk system logs
  • Verify configuration file integrity after regeneration

About this skill

asterisk-config-validating

Validates Asterisk configuration files and analyzes logs to ensure they are correctly generated by MikoPBX workers and system methods.

What this skill does

  • Validates syntax of Asterisk configuration files (sip.conf, pjsip.conf, extensions.conf, etc.)
  • Checks for common configuration errors and warnings
  • Analyzes Asterisk logs for errors, warnings, and potential issues
  • Verifies that configurations follow MikoPBX generation patterns
  • Reports configuration inconsistencies and security issues

When to use this skill

Use this skill when:

  • After generating new Asterisk configurations via workers
  • Debugging Asterisk startup or runtime issues
  • Verifying configuration changes made by system methods
  • Analyzing Asterisk logs for errors or warnings
  • Checking if configurations follow best practices

How to use this skill

Simply invoke the skill and specify what you want to validate:

  • "Validate the current Asterisk configuration"
  • "Check pjsip.conf for errors"
  • "Analyze Asterisk logs for the last hour"
  • "Verify extensions.conf syntax"

Instructions

You are an expert Asterisk configuration validator. When invoked:

  1. Determine the validation target from the user's request (config files or logs)

  2. Access the Docker container to examine Asterisk files:

    # Get container ID
    docker ps | grep mikopbx
    
    # Access config files in container
    docker exec <container_id> cat /etc/asterisk/<config_file>
    
    # Access logs
    docker exec <container_id> tail -n 500 /storage/usbdisk1/mikopbx/log/asterisk/messages
    docker exec <container_id> tail -n 500 /var/log/asterisk/full
    
  3. For configuration validation, check:

    • Syntax errors: Use asterisk -rx "core reload" or check for parse errors
    • Common mistakes: Missing semicolons, incorrect contexts, invalid options
    • Security issues: Weak passwords, open access, missing encryption
    • MikoPBX patterns: Check if configs follow MikoPBX generation style
    • Cross-references: Verify that referenced contexts/extensions exist

    Key config locations:

    • Main configs: /etc/asterisk/
    • Generated configs: /etc/asterisk/ (check timestamps)
    • Backup configs: Check if backups exist
  4. For log analysis, examine:

    • Error messages: Search for ERROR, CRITICAL, FATAL
    • Warnings: Search for WARNING, WARN
    • Common issues:
      • Registration failures
      • Codec negotiation problems
      • NAT/network issues
      • Authentication failures
      • Dial failures
      • Memory leaks or performance issues

    Useful log commands:

    # Recent errors
    docker exec <id> grep -i error /storage/usbdisk1/mikopbx/log/asterisk/messages | tail -50
    
    # Registration issues
    docker exec <id> grep -i "registration" /var/log/asterisk/full | tail -50
    
    # Dial failures
    docker exec <id> grep -i "dial\|call" /var/log/asterisk/full | tail -100
    
  5. Test configuration loading:

    # Check if Asterisk can parse config
    docker exec <id> asterisk -rx "dialplan reload"
    docker exec <id> asterisk -rx "pjsip reload"
    docker exec <id> asterisk -rx "core show config mappings"
    
  6. Report findings in a structured format:

    ## Validation Results
    
    ### Configuration: <file_name>
    - Status: ✅ Valid / ⚠️ Warnings / ❌ Errors
    - Issues found: <count>
    
    ### Critical Issues
    - [Error/Warning]: <description>
    - Location: <file>:<line>
    - Recommendation: <fix>
    
    ### Warnings
    - <list of warnings>
    
    ### Log Analysis
    - Errors in last hour: <count>
    - Recent critical issues: <list>
    
    ### Recommendations
    - <actionable fixes>
    
  7. Provide actionable fixes:

    • Show the exact line/section with the issue
    • Suggest the correct configuration
    • Reference MikoPBX worker classes if relevant
    • Link to relevant Asterisk documentation

Important Docker paths

  • Asterisk configs: /etc/asterisk/
  • System logs: /storage/usbdisk1/mikopbx/log/system/messages
  • Asterisk logs: /storage/usbdisk1/mikopbx/log/asterisk/messages
  • Full log: /var/log/asterisk/full
  • Database: /cf/conf/mikopbx.db

Common validation commands

# Check Asterisk CLI status
docker exec <id> asterisk -rx "core show version"
docker exec <id> asterisk -rx "core show uptime"

# Verify config files exist
docker exec <id> ls -lah /etc/asterisk/

# Check for syntax errors in dialplan
docker exec <id> asterisk -rx "dialplan show"

# List SIP/PJSIP peers
docker exec <id> asterisk -rx "pjsip show endpoints"

# Check for module load errors
docker exec <id> asterisk -rx "module show like"

MikoPBX-specific checks

  1. Verify worker-generated configs have proper headers with generation timestamp
  2. Check database consistency with configuration files
  3. Verify custom files in /storage/usbdisk1/mikopbx/custom_modules/
  4. Check fail2ban integration for security rules

Output format

Always provide:

  1. Clear status (✅/⚠️/❌)
  2. Issue count and severity
  3. Specific locations (file:line)
  4. Recommended fixes
  5. Links to documentation when helpful

Be thorough but concise. Focus on actionable information.

When not to use it

  • Non-Asterisk PBX systems
  • Tasks not involving configuration or log analysis

Prerequisites

dockerAccess to MikoPBX container

Limitations

  • Requires active Docker environment
  • Limited to the scope of MikoPBX Asterisk deployments

How it compares

It enables direct, environment-specific validation of generated PBX configs, detecting errors that generic linters might miss.

Compared to similar skills

asterisk-validator side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
asterisk-validator (this skill)19moReviewIntermediate
analyzing-logs1427dReviewBeginner
sentry104moCautionBeginner
obsidian-incident-runbook327dReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

sqlite-inspector

mikopbx

Проверка консистентности данных в SQLite баз данных MikoPBX после операций REST API. Использовать при валидации результатов API, отладке проблем с данными, проверке связей внешних ключей или инспектировании CDR записей для тестирования.

568

log-analyzer

mikopbx

Анализ логов Docker контейнера для диагностики проблем и мониторинга здоровья системы. Использовать при отладке ошибок, отслеживании процессов воркеров, исследовании проблем API или мониторинге поведения системы после тестов.

213

openapi-analyzer

mikopbx

Извлечение и анализ OpenAPI 3.1.0 спецификации из MikoPBX для валидации эндпоинтов. Использовать при проверке соответствия API, генерации тестов, проверке схем эндпоинтов или интеграции с навыками endpoint-validator и api-test-generator.

25

api-test-generator

mikopbx

Генерация полных Python pytest тестов для REST API эндпоинтов с валидацией схемы. Использовать при создании тестов для новых эндпоинтов, добавлении покрытия для CRUD операций или валидации соответствия API с OpenAPI схемами.

16

asterisk-tester

mikopbx

Тестирование сценариев Asterisk dialplan и потоков звонков используя безопасные Local каналы. Использовать при тестировании логики маршрутизации звонков, отладке проблем dialplan или проверке потоков IVR меню.

11

auth-token-manager

mikopbx

Получение валидных JWT Bearer токенов для аутентификации MikoPBX REST API v3. Использовать когда нужно тестировать API эндпоинты, отлаживать проблемы аутентификации или при возникновении ошибок 401 Unauthorized. Автоматически обрабатывает вход с username/password и возвращает готовый к использованию access token.

15

You might also like

analyzing-logs

jeremylongshore

Analyze application logs to detect performance issues, identify error patterns, and improve stability by extracting key insights.

14123

sentry

openai

Use when the user asks to inspect Sentry issues or events, summarize recent production errors, or pull basic Sentry health data via the Sentry API; perform read-only queries with the bundled script and require `SENTRY_AUTH_TOKEN`.

1048

obsidian-incident-runbook

jeremylongshore

Troubleshoot Obsidian plugin failures with systematic incident response. Use when plugins crash, data is corrupted, or users report critical issues with your Obsidian plugin. Trigger with phrases like "obsidian crash", "obsidian plugin broken", "obsidian incident", "debug obsidian failure", "obsidian emergency".

346

obsidian-observability

jeremylongshore

Set up comprehensive logging and monitoring for Obsidian plugins. Use when implementing debug logging, tracking plugin performance, or setting up error reporting for your Obsidian plugin. Trigger with phrases like "obsidian logging", "obsidian monitoring", "obsidian debug", "track obsidian plugin".

534

langsmith-observability

davila7

LLM observability platform for tracing, evaluation, and monitoring. Use when debugging LLM applications, evaluating model outputs against datasets, monitoring production systems, or building systematic testing pipelines for AI applications.

430

network-info

UKGovernmentBEIS

Gather network configuration and connectivity information including interfaces, routes, and DNS

329

Search skills

Search the agent skills registry