update-project
Pass
Audited by Gen Agent Trust Hub on Aug 14, 2026
Risk Level: SAFECOMMAND_EXECUTIONEXTERNAL_DOWNLOADS
Full Analysis
- [COMMAND_EXECUTION]: The skill executes various local system commands and project-specific scripts to manage the update process.\n
- Uses
subprocess.runto invoke Git for repository state inspection (git status,git diff,git ls-remote).\n - Executes
bd(Beads CLI) for project health checks and hook management.\n - Runs project-local scripts
scripts/setup-tooling.pyandscripts/check-docs.pyfollowing template updates.\n- [EXTERNAL_DOWNLOADS]: The skill fetches template data from an external source.\n - Downloads project templates from the author's GitHub repository (
gh:RobertDeRose/dstack) using the Copier library.\n - The implementation explicitly sets
unsafe=Falsewhen callingcopier.run_updateandcopier.run_copy, which prevents the execution of arbitrary shell tasks defined within the template metadata.\n- [DYNAMIC_EXECUTION]: The skill dynamically loads Python logic from the project environment.\n - Uses
importlib.utilto loadlayout_contract.pyandbeads_hooks.pyfrom specific paths within the skill and project structure.\n- [INDIRECT_PROMPT_INJECTION]: The skill processes untrusted project data (e.g.,.copier-answers.yml, task files) and remote template content.\n - Ingestion points: Reads project configuration files and external template repositories.\n
- Boundary markers: The workflow requires a manual 'path-accounting ledger' as described in SKILL.md where every change must be classified (accepted, preserved, or resolved) before committing.\n
- Capability inventory: Includes file system writes, Git operations, and execution of setup scripts.\n
- Sanitization: Implements strict path validation in
layout_contract.py, ensuring paths are relative, normalized, and do not resolve through symlinks.
Audit Metadata