@trailofbits

Creador · trailofbits

Última actualización · 24 ago 2026

algorand-vulnerability-scanner

Revisar · 74Indexado en Registry

Scans Algorand smart contracts for 11 common vulnerabilities including rekeying attacks, unchecked transaction fees, missing field validations, and access control issues. Use when auditing Algorand projects (TEAL/PyTeal).

Trust Score de OpenAgentSkill
74/100

Solo sandbox

Calidad86/100
Auditoría87/100
Estrellas6.8K
Verified installs0

Destinos de instalación

Prompt de instalación para Codex

Install the "algorand-vulnerability-scanner" agent skill from https://github.com/trailofbits/skills/tree/main/plugins/building-secure-contracts/skills/algorand-vulnerability-scanner. Read its SKILL.md or equivalent instructions first, install only the files needed for this workspace, and summarize any required setup before using it. Skill purpose: Scans Algorand smart contracts for 11 common vulnerabilities including rekeying attacks, unchecked transaction fees, missing field validations, and access control issues. Use when auditing Algorand projects (TEAL/PyTeal). After the install attempt, report the result to https://www.openagentskill.com/api/agent/outcome with POST JSON {"event_id":"install_<unique-id>","skill_slug":"trailofbits-algorand-vulnerability-scanner","task":"Install algorand-vulnerability-scanner","agent":"codex","outcome":"success","install_used":true}. Replace event_id with a unique value and outcome with success or failed. Report success only after the skill is installed and a minimal verification passes.

Perfil del activo

Agents de programación y desarrollo

Code review, repo analysis, testing, CI, GitHub, DevOps, and developer workflow skills.

Ver categoría

Escenario

GitHub automation

I need my agent to triage GitHub issues, review pull requests, and summarize repository changes.

Afinidad con Agent

Claude Code + CLI + Codex

Funciona con Codex, Claude Code, Cursor, CLI o Agents personalizados.

Instalar

Listo

npx skills add trailofbits/skills --skill algorand-vulnerability-scanner

Mantenimiento

Actual

Actualizado hoy

Riesgo

Riesgoso

Permission surface may require sandboxing

Calidad de GitHub

6.8K

86/100 Calidad · 82/100 Confianza

Etiquetas de cobertura

CodingGitHub automationSeguridadagent-skill

Notas de revisión

Permission surface may require sandboxing · Potential broker, wallet, exchange, or real-money execution surface; sandbox and explicit approval are required

Tarjeta de adopción del Agent

Confianza, auditoría y preparación de instalación de un vistazo

Estas puntuaciones combinan metadatos públicos del repositorio, señales de revisión de OpenAgentSkill, actualidad de mantenimiento y preparación de instalación. Sirven para preseleccionar; no sustituyen la revisión humana.

Calidad

Excelente
86

High-confidence pick with strong adoption and healthy maintenance signals.

Confianza

Solo sandbox
74

Candidata útil con señales de confianza incompletas o mixtas. Manténgala en un espacio aislado hasta que el ciclo de resultados demuestre el ajuste.

Auditoría

Riesgoso
87

Revisión legible por máquina de la preparación de instalación, los metadatos de seguridad, el mantenimiento y el riesgo de adopción.

Trust Score de OpenAgentSkill v5

Solo sandbox

Ejecute solo en un sandbox y compare alternativas cercanas antes de usarla en trabajo real.

CodexClaude CodeCursorOpenAgentSkill CLI

Estrellas

6.8K estrellas de GitHub

Actividad del repositorio

6.8K estrellas y 585 forks

Mantenimiento

Actualizado hoy

Licencia

CC-BY-SA-4.0

Instalar

npx skills add trailofbits/skills --skill algorand-vulnerability-scanner

Seguridad de instalación

Ruta estándar de paquete o instalación en tiempo de ejecución

Superficie de permisos

shell or command execution, filesystem or document access

Resultados del Agent

Aún no hay datos de resultados del Agent

Documentación

Contexto sólido de README/SKILL.md

Resumen de riesgo

Revisar antes de producción

  • This skill may touch real-money trading, broker, wallet, or exchange operations; use only in a sandbox with explicit approval.
  • Quality score needs review
  • Permission surface needs review: shell or command execution, filesystem or document access
  • Permission surface: shell or command execution, filesystem or document access

Preparación de instalación

Ruta de instalación disponible

  • La ruta de instalación está disponible
  • La evidencia del repositorio está disponible
  • La licencia está declarada
  • Aún no hay evidencia de resultados Agent-Proven

Metadatos legibles por Agent

Datos de decisión legibles por máquina para este skill.

Usa este bloque o el JSON integrado para decidir si un Agent debe instalar este skill, elegir una alternativa o pedir revisión humana primero.

View technical data+

Tareas adecuadas

  • flujos de GitHub automation
  • Equipos de Claude Code
  • Equipos que valoran señales de adopción de GitHub
  • Inspect repository metadata

Agents adecuados

CodexClaude CodeCursorOpenAgentSkill CLICLI

Decisión de instalación

Comando
npx skills add trailofbits/skills --skill algorand-vulnerability-scanner
Política
Bloquear
Revisión humana

Confianza y riesgo

Confianza
74/100
Auditoría
87/100
Nivel de riesgo
Riesgoso

Ciclo de resultados

Endpoint
/api/agent/outcome
ID del evento
resolve
Resultados
5

Comando de instalación

npx skills add trailofbits/skills --skill algorand-vulnerability-scanner

No usar cuando

  • Equipos que necesitan un SLA con soporte del proveedor
  • Entornos de alta conformidad sin revisión interna de seguridad
  • No OpenAgentSkill engagement data yet
  • Audit risk risky exceeds max_risk=medium
  • Indicios de permisos de alto riesgo: ejecución de shell o comandos

Seguridad de Agent v2

55/100 · Evitar instalación automática

Blocked for auto-installBloquear

This skill should not be selected by an agent without explicit human security review.

Do not auto-install. Inspect the source, dependencies, and permission surface first.

Resolver con API

Alto

Ejecución de shell o comandos

Los metadatos del skill hacen referencia a terminal, CLI, shell, subprocesos o flujos de ejecución de comandos.

Medio

Acceso a red

El skill probablemente consulta páginas remotas, API, repositorios o servicios externos.

Medio

Acceso al sistema de archivos

El skill puede leer o escribir archivos de proyecto, documentos, artefactos generados o estado local.

Medio

Acceso a base de datos

El skill puede inspeccionar esquemas, consultar bases de datos o trabajar con almacenes persistentes.

  • Audit risk risky exceeds max_risk=medium
  • Indicios de permisos de alto riesgo: ejecución de shell o comandos
  • Permission surface may require sandboxing

Plan de resolución de Agent

Deja que un Agent valide el ajuste antes de instalar.

La API Resolve devuelve la skill elegida, alternativas, política de seguridad, notas de auditoría, destino de instalación y un prompt listo para usar.

Abrir plan de texto

Agent debe revisar

  • Task fit and alternatives from Resolve API.
  • Audit score, trust score, and safety policy warnings.
  • Install target compatibility for Codex, Claude Code, Cursor, or CLI.

Copiar prompt

Task: Use algorand-vulnerability-scanner in this workspace.
Resolve first: https://www.openagentskill.com/api/agent/resolve?task=Use%20algorand-vulnerability-scanner%20for%20an%20agent%20workflow&agent=codex&max_risk=medium
Review install handoff: https://www.openagentskill.com/api/skills/trailofbits-algorand-vulnerability-scanner/install
Install command: npx skills add trailofbits/skills --skill algorand-vulnerability-scanner
Before running it, summarize audit warnings, required permissions, and the fallback skill if install is risky.

Traspaso de Agent

Da al Agent la ruta de instalación, no otro directorio.

Usa el endpoint público para obtener el comando, la lista de seguridad, prompts y enlaces canónicos.

Abrir API de instalación

Prompt de Agent

Use algorand-vulnerability-scanner for this task. Review https://www.openagentskill.com/api/skills/trailofbits-algorand-vulnerability-scanner/install, then install with: npx skills add trailofbits/skills --skill algorand-vulnerability-scanner

Metadatos del Registry

Perfil legible por Agent para seleccionar skills automáticamente.

La API Registry expone señales de decisión, confianza, auditoría, casos de uso e instalación sin raspar la interfaz.

Abrir Manifest

Afinidad con Agent

97/100

GitHub automation

Plataformas

Claude Code

Informe de auditoría

Riesgoso · 87/100

Revisión legible por máquina de la preparación de instalación, los metadatos de seguridad, el mantenimiento y el riesgo de adopción.

Ver informe de auditoríaVer informe de evaluación

Panel de decisión de Agent

Elección principal para GitHub automation

Use this as a leading candidate, then validate the README and install path in your own agent stack.

97
Preparación
Adoptar
Etapa

Rol en la pila

Elección principal

Ajuste principal

GitHub automation

Etiqueta de confianza

Listo para producción

Ruta de instalación

Comando listo

Úsalo cuando

  • flujos de GitHub automation
  • Equipos de Claude Code
  • Equipos que valoran señales de adopción de GitHub

Evidencia

  • 6,823 estrellas de GitHub
  • recent repository activity
  • install command or GitHub repo available
  • perfil de calidad 86/100

revisar primero

  • No OpenAgentSkill engagement data yet

Ruta de implementación

  1. 1Instálalo en un Agent de sandbox y ejecuta una tarea de GitHub automation de principio a fin.
  2. 2Compare output quality, latency, and failure behavior against at least one alternative.
  3. 3Promote it into production only after reviewing repository permissions, license, and maintenance signals.

Perfil de confianza

Solo sandbox

Candidata útil con señales de confianza incompletas o mixtas. Manténgala en un espacio aislado hasta que el ciclo de resultados demuestre el ajuste.

74
Trust Score de OpenAgentSkill

Adopción en GitHub

Aprobado

6.8K estrellas de GitHub

Actividad de stars/forks

Aprobado

6.8K estrellas y 585 forks; la actividad de issues no está disponible en los metadatos actuales

Mantenimiento reciente

Aprobado

Actualizado hoy

Claridad de licencia

Aprobado

CC-BY-SA-4.0

Señales positivas

  • Revisión de IA aprobada
  • La ruta de instalación está disponible
  • La evidencia del repositorio está disponible
  • Repositorio mantenido recientemente
  • Large GitHub adoption signal
  • El comando de instalación no muestra un patrón de alto riesgo evidente
  • El ciclo de resultados está listo, pero necesita la primera ejecución real de Agent

Revisar antes de instalar

  • This skill may touch real-money trading, broker, wallet, or exchange operations; use only in a sandbox with explicit approval.
  • Quality score needs review
  • Permission surface needs review: shell or command execution, filesystem or document access
  • Permission surface: shell or command execution, filesystem or document access
  • Aún no hay informes reales de resultados del Agent
  • Se requiere revisión humana antes de una instalación desatendida

Acción recomendada

Ejecute solo en un sandbox y compare alternativas cercanas antes de usarla en trabajo real.

Perfil de calidad

Excelente candidato para flujos de Agent

High-confidence pick with strong adoption and healthy maintenance signals.

86
Estrellas de GitHub
6.8K
Actualidad
Hoy
Listo para instalar
Licencia
CC-BY-SA-4.0

Ajuste de flujo

Usa esta skill en estos escenarios

Ajuste de flujo

Añadir a un flujo completo

Lista de alternativas

Compara antes de instalar

Similar skills that may fit this task.

Comparar todo

Resumen

--- name: algorand-vulnerability-scanner description: Scans Algorand smart contracts for 11 common vulnerabilities including rekeying attacks, unchecked transaction fees, missing field validations, and access control issues. Use when auditing Algorand projects (TEAL/PyTeal). ---

# Algorand Vulnerability Scanner

## 1. Purpose

Systematically scan Algorand smart contracts (TEAL and PyTeal) for platform-specific security vulnerabilities documented in Trail of Bits' "Not So Smart Contracts" database. This skill encodes 11 critical vulnerability patterns unique to Algorand's transaction model.

## 2. When to Use This Skill

- Auditing Algorand smart contracts (stateful applications or smart signatures) - Reviewing TEAL assembly or PyTeal code - Pre-audit security assessment of Algorand projects - Validating fixes for reported Algorand vulnerabilities - Training team on Algorand-specific security patterns

## 3. Platform Detection

### File Extensions & Indicators - **TEAL files**: `.teal` - **PyTeal files**: `.py` with PyTeal imports

### Language/Framework Markers ```python # PyTeal indicators from pyteal import * from algosdk import *

# Common patterns Txn, Gtxn, Global, InnerTxnBuilder OnComplete, ApplicationCall, TxnType @router.method, @Subroutine ```

### Project Structure - `approval_program.py` / `clear_program.py` - `contract.teal` / `signature.teal` - References to Algorand SDK or Beaker framework

### Tool Support - **Tealer**: Trail of Bits static analyzer for Algorand - Installation: `uv tool install tealer` (ensure uv's tool bin dir is on PATH) - Usage: `tealer contract.teal --detect all`

---

## 4. How This Skill Works

When invoked, I will:

1. **Search your codebase** for TEAL/PyTeal files 2. **Analyze each file** for the 11 vulnerability patterns 3. **Report findings** with file references and severity 4. **Provide fixes** for each identified issue 5. **Run Tealer** (if installed) for automated detection

---

## 5. Example Output

When vulnerabilities are found, you'll get a report like this:

``` === ALGORAND VULNERABILITY SCAN RESULTS ===

Project: my-algorand-dapp Files Scanned: 3 (.teal, .py) Vulnerabilities Found: 2

---

[CRITICAL] Rekeying Attack File: contracts/approval.py:45 Pattern: Missing RekeyTo validation

Code: If(Txn.type_enum() == TxnType.Payment, Seq([ # Missing: Assert(Txn.rekey_to() == Global.zero_address()) App.globalPut(Bytes("balance"), balance + Txn.amount()), Approve() ]) )

Issue: The contract doesn't validate the RekeyTo field, allowing attackers to change account authorization and bypass restrictions. ```

---

## 6. Vulnerability Patterns (11 Patterns)

I check for 11 critical vulnerability patterns unique to Algorand. For detailed detection patterns, code examples, mitigations, and testing strategies, see [VULNERABILITY_PATTERNS.md](resources/VULNERABILITY_PATTERNS.md).

### Pattern Summary:

1. **Rekeying Vulnerability** ⚠️ CRITICAL - Unchecked RekeyTo field 2. **Missing Transaction Verification** ⚠️ CRITICAL - No GroupSize/GroupIndex checks 3. **Group Transaction Manipulation** ⚠️ HIGH - Unsafe group transaction handling 4. **Asset Clawback Risk** ⚠️ HIGH - Missing clawback address checks 5. **Application State Manipulation** ⚠️ MEDIUM - Unsafe global/local state updates 6. **Asset Opt-In Missing** ⚠️ HIGH - No asset opt-in validation 7. **Minimum Balance Violation** ⚠️ MEDIUM - Account below minimum balance 8. **Close Remainder To Check** ⚠️ HIGH - Unchecked CloseRemainderTo field 9. **Application Clear State** ⚠️ MEDIUM - Unsafe clear state program 10. **Atomic Transaction Ordering** ⚠️ HIGH - Assuming transaction order 11. **Logic Signature Reuse** ⚠️ HIGH - Logic sigs without uniqueness constraints

For complete vulnerability patterns with code examples, see [VULNERABILITY_PATTERNS.md](resources/VULNERABILITY_PATTERNS.md).

## 7. Scanning Workflow

### Step 1: Platform Identification 1. Confirm file extensions (`.teal`, `.py`) 2. Identify framework (PyTeal, Beaker, pure TEAL) 3. Determine contract type (stateful application vs smart signature) 4. Locate approval and clear state programs

### Step 2: Static Analysis with Tealer ```bash # Run Tealer on contract tealer contract.teal --detect all

# Or specific detectors tealer contract.teal --detect unprotected-rekey,group-size-check,update-application-check ```

### Step 3: Manual Vulnerability Sweep For each of the 11 vulnerabilities above: 1. Search for relevant transaction field usage 2. Verify validation logic exists 3. Check for bypass conditions 4. Validate inner transaction handling

### Step 4: Transaction Field Validation Matrix Create checklist for all transaction types used:

**Payment Transactions**: - [ ] RekeyTo validated - [ ] CloseRemainderTo validated - [ ] Fee validated (if smart signature)

**Asset Transfers**: - [ ] Asset ID validated - [ ] AssetCloseTo validated - [ ] RekeyTo validated

**Application Calls**: - [ ] OnComplete validated - [ ] Access controls enforced - [ ] Group size validated

**Inner Transactions**: - [ ] Fee explicitly set to 0 - [ ] RekeyTo not user-controlled (Teal v6+) - [ ] All fields validated

### Step 5: Group Transaction Analysis For atomic transaction groups: 1. Validate `Global.group_size()` checks 2. Review absolute vs relative indexing 3. Check for replay protection (Lease field) 4. Verify OnComplete fields for ApplicationCalls in group

### Step 6: Access Control Review - [ ] Creator/admin privileges properly enforced - [ ] Update/delete operations protected - [ ] Sensitive functions have authorization checks

---

## 8. Reporting Format

### Finding Template ````markdown ## [SEVERITY] Vulnerability Name (e.g., Missing RekeyTo Validation)

**Location**: `contract.teal:45-50` or `approval_program.py:withdraw()`

**Description**: The contract approves payment transactions without validating the RekeyTo field, allowing an attacker to rekey the account and bypass future authorization checks.

**Vulnerable Code**: ```python # approval_program.py, line 45 If(Txn.type_enum() == TxnType.Payment, Approve() # Missing RekeyTo check ) ```

**Attack Scenario**: 1. Attacker submits payment transaction with RekeyTo set to attacker's address 2. Contract approves transaction without checking RekeyTo 3. Account authorization is rekeyed to attacker 4. Attacker gains full control of account

**Recommendation**: Add explicit validation of the RekeyTo field: ```python If(And( Txn.type_enum() == TxnType.Payment, Txn.rekey_to() == Global.zero_address() ), Approve(), Reject()) ```

**References**: - building-secure-contracts/not-so-smart-contracts/algorand/rekeying - Tealer detector: `unprotected-rekey` ````

---

## 9. Priority Guidelines

### Critical (Immediate Fix Required) - Rekeying attacks - CloseRemainderTo / AssetCloseTo issues - Access control bypasses

### High (Fix Before Deployment) - Unchecked transaction fees - Asset ID validation issues - Group size validation - Clear state transaction checks

### Medium (Address in Audit) - Inner transaction fee issues - Time-based replay attacks - DoS via asset opt-in

---

## 10. Testing Recommendations

### Unit Tests Required - Test each vulnerability scenario with PoC exploit - Verify fixes prevent exploitation - Test edge cases (group size = 0, empty addresses, etc.)

### Tealer Integration ```bash # Add to CI/CD pipeline tealer approval.teal --detect all --json > tealer-report.json

# Fail build on critical findings tealer approval.teal --detect all --fail-on critical,high ```

### Scenario Testing - Submit transactions with all critical fields manipulated - Test atomic groups with unexpected sizes - Attempt access control bypasses - Verify inner transaction fee handling

---

## 11. Additional Resources

- **Building Secure Contracts**: `building-secure-contracts/not-so-smart-contracts/algorand/` - **Tealer Documentation**: https://github.com/crytic/tealer - **Algorand Developer Docs**: https://developer.algorand.org/docs/ - **PyTeal Documentation**: https://pyteal.readthedocs.io/

---

## 12. Quick Reference Checklist

Before completing Algorand audit, verify ALL items checked:

- [ ] RekeyTo validated in all transaction types - [ ] CloseRemainderTo validated in payment transactions - [ ] AssetCloseTo validated in asset transfers - [ ] Transaction fees validated (smart signatures) - [ ] Group size validated for atomic transactions - [ ] Lease field used for replay protection (where applicable) - [ ] Access controls on Update/Delete operations - [ ] Asset ID validated in all asset operations - [ ] Asset transfers use pull pattern to avoid DoS - [ ] Inner transaction fees explicitly set to 0 - [ ] OnComplete field validated for ApplicationCall transactions - [ ] Tealer scan completed with no critical/high findings - [ ] Unit tests cover all vulnerability scenarios

Detalles técnicos

Versión
1.0.0
Licencia
CC-BY-SA-4.0
Última actualización
24 ago 2026
Publicado
24 ago 2026

Resumen de decisión

Elección principal

97
Listo
Adoptar
Etapa

6,823 estrellas de GitHub

Auditoría

Revisión de instalación

Revisión de instalación y adopción

87
Riesgoso
Seguridad
82/100
Mantenimiento
100/100
Instalar
92/100
Abrir auditoría completaVer informe de evaluación

Evidencia probada por Agent

Evidencia probada por Agent

Informes de resultados tras resolver, revisar, instalar y una ejecución limitada.

0
Probado
Needs first agent runAuto-instalación: revisar primeroÚltimo: Desconocido
Tasa de éxito
Fallo reciente
Resultados
0
Calidad de salida
Fallidos
0
No relevante
0
Instalaciones
0
Bloqueado por riesgo
0
Configuración necesaria
0
Producción
0

Aún no hay datos de resultados de Agent. La primera ejecución puede informar éxito, configuración necesaria, bloqueos de riesgo, fallo o irrelevancia mediante /api/agent/outcome.

Instalar

Añadir al flujo de Agent

Gratis y de código abierto. Revisa el informe antes de instalar en Agents de producción.

Bucle de crecimiento

Kit para compartir

X

Borrador basado en un caso para algorand-vulnerability-scanner, listo para publicar manualmente en X.

Nota del curador
algorand-vulnerability-scanner: Scans Algorand smart contracts for 11 common vulnerabilities including rekeying attacks, unch...

6.8K stars

https://www.openagentskill.com/skills/trailofbits-algorand-vulnerability-scanner?ref=x
Abrir borrador de X
Respuesta opcional con comando de instalación
Listing + install path for algorand-vulnerability-scanner:
https://www.openagentskill.com/skills/trailofbits-algorand-vulnerability-scanner?ref=x

Install: npx skills add trailofbits/skills --skill algorand-vulnerability-scanner

Fuente de la ficha

Indexado por Registry

Reclamable

Esta ficha se indexó desde fuentes públicas y no está marcada como oficial hasta que se apruebe una reclamación de mantenedor.

Indexado por
Índice comunitario de OpenAgentSkill

La atribución enlaza al repositorio público o al perfil del creador. Los creadores pueden reclamar la ficha para actualizar las señales de propiedad.

Reclamar este skill

Reclamación del propietario

Reclamar esta ficha de skill

Esta ficha Indexado por Registry se atribuye a trailofbits, pero aún no está marcada como oficial. Reclámala para añadir una señal de propietario verificado y hacer más fiables futuras actualizaciones de lanzamiento, instalación y auditoría.

Kit de enlaces para creadores

Añade las insignias de evidencia a tu README

Muestra la ficha canónica, las señales actuales de confianza y auditoría, y evidencia real de Agent-Proven donde los desarrolladores evalúan el repositorio.

[![Listed on OpenAgentSkill](https://www.openagentskill.com/api/badge/trailofbits-algorand-vulnerability-scanner?metric=listed&label=Listed)](https://www.openagentskill.com/skills/trailofbits-algorand-vulnerability-scanner)
[![OpenAgentSkill Trust](https://www.openagentskill.com/api/badge/trailofbits-algorand-vulnerability-scanner?metric=trust&label=Trust)](https://www.openagentskill.com/skills/trailofbits-algorand-vulnerability-scanner)
[![OpenAgentSkill Audit](https://www.openagentskill.com/api/badge/trailofbits-algorand-vulnerability-scanner?metric=audit&label=Audit)](https://www.openagentskill.com/skills/trailofbits-algorand-vulnerability-scanner/audit)
[![Agent Proven](https://www.openagentskill.com/api/badge/trailofbits-algorand-vulnerability-scanner?metric=proven&label=Agent%20Proven)](https://www.openagentskill.com/skills/trailofbits-algorand-vulnerability-scanner)

Autor

T

trailofbits

@trailofbits

Etiquetas

Afinidad con plataforma

Señales de salud

Estrellas de GitHub
6.8K
Puntuación de calidad
50/100
Último push de GitHub
24 ago 2026
Pistas del framework
Desconocido
Vistas de OpenAgentSkill
0
Copias de instalación
0
Clics externos
0

Señal de comunidad

Comparte si este skill resulta útil para tu flujo de Agent. Los comentarios agregados mejoran la clasificación con el tiempo.

Confianza y seguridad

Solo sandbox

74
  • Adopción en GitHub6.8K estrellas de GitHubAprobado
  • Actividad de stars/forks6.8K estrellas y 585 forks; la actividad de issues no está disponible en los metadatos actualesAprobado
  • Mantenimiento recienteActualizado hoyAprobado
  • Claridad de licenciaCC-BY-SA-4.0Aprobado
  • Completitud de README/SKILL.mdLos metadatos incluyen suficiente contexto de uso y flujo de trabajoAprobado
  • Riesgo de dependencias/runtimecommand execution surface, database surfaceInfo